<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    J2EE準備篇

    Posted on 2005-04-19 11:11 zool 閱讀(1439) 評論(1)  編輯  收藏 所屬分類: Java

    1 什么是J2EE?它和普通的Java有什么不同?
    答:J2EE全稱為Java2 Platform, Enterprise Edition
    “J2EE
    平臺本質上是一個分布式的服務器應用程序設計環境——一個Java環境,它提供了:
    ·
    宿主應用的一個運行基礎框架環境。
    ·
    一套用來創建應用的Java擴展API(引自《J2EE服務器端高級編程》)

    2 J2EE好學嗎?
    答:J2EE是很多技術的集合體,并且還在成長中。
    你會遇到很多專有名詞:比如(X)HTMLServlet/JSPJDBCJMSJNDIEJBXMLWeb Service……
    尤其是XMLWeb Service正在快速成長。幸運的是,你不需要等到學會所有技術后再開始編程。
    大體上J2EE可以分成3個主要應用:Servlet/JSPEJBXML/Web Service 和一些支撐技術例如JDBCJNDI
    你可以一個一個的學。

    3 J2EE有什么用?
    答:用來建設大型的分布式企業級應用程序。或者用更時髦的名詞說就是電子商務應用程序。
    這些企業可能大到擁有中心數據庫服務器,Web服務器集群和遍布全國的辦公終端,也可能小到只不過想做一個網站。

    4 J2EE有前途嗎?
    答:在這一市場目前只有一種技術可以和J2EE競爭,那就是Microsoft.NET
    相對來說.NET一些而J2EE一些。
    但是.NET只能用于Windows平臺(Microsoft聲稱要開發C#Linux上的虛擬機但是尚未兌現該諾言),
    考慮到Linux的發展勢頭,你可以相信.NET不會一統天下。

    5 據說J2EE的性能不如.NET好,是真的嗎?
    答:在Sun公司提供的樣例程序Pet Store上,Microsoft聲稱不如相同的.NET程序好。
    Sun公司反駁說這一程序不能真正體現J2EE的性能,并且指責Microsoft在數據庫上做了優化。
    作者沒有學習過.NET因而不能妄下斷言。
    無論如何,大型分布式程序中的性能瓶頸通常首先來自于錯誤的設計。

    6 聽你說了這么多,我想學著玩玩。
    答:除非你想靠它當飯吃或者作為技術儲備,否則請不要浪費你的時間。
    Flash
    要好玩得多。計算機游戲就更加好玩了。

    7 學習J2EE該怎么開始?
    答:首先,下載一個J2EE服務器。其次,去java.sun.com下載J2EEAPI。第三,找一本好的參考書。最后,找一個順手的IDE
    J2EE
    服務器。你可以用SunJ2EE SDK(免費),或者Weblogic(性能最好,但是太大,而且作者不推薦盜版行為),或者JBoss(免費,就是文檔太少),或者JRun(開發版免費,作者用這個)。參考書作者感覺Wrox的《J2EE服務器端高級編程》不錯,但是太老(作者手頭的是2001年中文版)。你還需要去下載一些最新的技術資料(當然肯定是英文的)。
    IDE
    如果你的機器配置夠好(內存至少512M以上,256M或以下請勿考慮),可以用IBMWSAD,不然就繼續用Eclipse或者其他。
    你也可以經常去水木清華的Java版逛逛,但是在發貼前先看看精華區里有沒有你要的答案。

    8 我下了一個J2EE服務器但是不會配置。
    答:請認真閱讀隨機指導文檔,不同的服務器的配置都不一樣,作者愛莫能助。

    9 我發現你沒有提到Tomcat
    答:Tomcat只是一個Web服務器,更準確地說主要只是一個Web Container
    如果你想要學習EJB的話,Tomcat無法滿足你的需要。

    10 什么是Servlet
    答:一個Servlet是一個Java類。它處理Http(s)請求并作出響應,包括返回一個HTML頁面或轉交給其他URL處理。
    Servlet
    必須運行在一個Web Container例如Tomcat中。
    Servlet
    必須是javax.servlet.http.HttpServlet的子類,
    你可以繼承doGet()或者doPost()方法,兩者分別對應于Http(s)中的Get請求和Post請求。

    11 我怎么獲得Http請求里的參數?
    答:HttpRequestgetParameter()方法。例如:String paramValue = request.getParameter("paramName");

    12 我怎么返回結果?
    答:你可以利用相關API打開一個輸出流,并向流中直接寫入一個HTML頁面。
    但是作者完全不贊成這樣做。一方面這樣做會很羅嗦。
    另一方面從Model-View-Controller模式(在《J2EE核心模式》中被歸為Front Controller模式)的觀點來看,
    你應當提供一些HTML或者JSP作為視圖(view),而Servlet則根據請求參數決定轉到哪一個視圖。
    你可以利用response.sendRedirect(...)方法或request.getDispatcher(...).forward()方法來實現。

    13 sendRedirect()forward()有什么不同?
    答:sendRedirect()是向瀏覽器發送一個redirect通知,瀏覽器重定向到新的URL
    forward是在服務器端直接轉到新的URL,對于瀏覽器是透明的。
    前者瀏覽器的地址欄顯示的是新的URL,后者瀏覽器的地址欄顯示的是ServletURL
    因而當目標URL會自動刷新時,兩者會造成一些差別。

    14 我寫了一個Servlet程序,怎么運行它?
    答:開發J2EE程序有一個部署(deploy)的概念,實際上是開發——部署——運行的三部曲。
    大多數服務器支持Hot deploy。你只需要在相應的Application目錄(具體路徑依賴于服務器)下面
    建立一個符合WAREAR格式(參見1617)的目錄,啟動服務器,就可以通過瀏覽器訪問了。
    特別的,你的Servletclass文件應當放在/WEB-INF/classes目錄中。
    注意J2EE SDK不支持Hot deploy,你需要通過它的deploy tool來部署。
    Tomcat
    只支持WAR格式。

    15 EARWAR有什么不同?
    答:EAR是一個完整的J2EE應用程序,包括Web部分和EJB部分。
    WAR
    只是其中的Web部分。

    16 EAR格式是怎樣的?
    答:一個EAR可以包含任意多個WAREJB JAR,并且包含一個META-INF的目錄。
    /META-INF中包含了一個application.xml,其中描述了這個EAR包含哪些模塊,以及安全性配置。
    細節請看參考書。

    17 WAR格式是怎樣的?
    答:一個WAR包含一個WEB-INF的目錄,這個目錄下包含classes目錄,lib目錄和web.xml
    /WEB-INF/classes
    存放按package組織的class文件,/WEB-INF/lib目錄存放jar文件,
    web.xml
    描述了很多東西,請讀參考書。

    18 我的普通HTML文件應當放在哪里?
    答:放在除了/WEB-INF以外的其他地方。

    19 我訪問不到servlet,甚至連HTML文件都訪問不到!
    答:第一你沒啟動服務器。第二你敲錯了端口。第三你沒有正確配置context-path
    第四你的服務器不支持auto reload或者你關閉了這一選項,你得重啟服務器。
    第五確認你沒有把HTML放在/WEB-INF目錄下,那是訪問不到的。

    20 我能訪問HTML但是訪問不到servlet
    答:請檢查你的web.xml文件。確保你正確定義了<servlet><servlet-mapping>元素。
    前者標識了一個servlet,后者將一個相對于context-pathURL映射到一個servlet
    Tomcat中你可以通過/context-path/servlet/package/servletname的形式訪問servlet
    但是這只是Tomcat的便捷訪問方式,并不是正式規范。
    細節請看參考書。

    21 什么是JSP?它和Servlet有什么區別?
    答:你可以將JSP當做一個可擴充的HTML來對待。
    雖然在本質上JSP文件會被服務器自動翻譯為相應的Servlet來執行。
    可以說Servlet是面向Java程序員而JSP是面向HTML程序員的,除此之外兩者功能完全等價。

    Feedback

    # re: J2EE準備篇  回復  更多評論   

    2006-12-28 19:17 by Shawn
    8錯的文章.

    posts - 23, comments - 12, trackbacks - 0, articles - 5

    Copyright © zool

    主站蜘蛛池模板: 亚洲毛片免费视频| 在线免费观看中文字幕| 亚洲综合久久1区2区3区| 中文字幕无码免费久久99| 国产成人亚洲午夜电影| 亚洲AV日韩AV高潮无码专区| 亚洲免费网站观看视频| 香蕉国产在线观看免费| 亚洲精品456在线播放| 免费乱理伦在线播放| 最近中文字幕国语免费完整 | 114一级毛片免费| 国产亚洲精品成人久久网站| 久久精品亚洲视频| 国产又长又粗又爽免费视频| 无码国产精品一区二区免费模式 | 一级毛片在线免费看| 日韩a毛片免费观看| 亚洲av乱码一区二区三区香蕉 | 亚洲性69影院在线观看| 亚洲欧洲精品成人久久曰影片 | 日韩人妻无码精品久久免费一| 亚洲国产精品无码久久| 亚洲日本在线观看| 亚洲AV无码专区日韩| 美女被免费喷白浆视频| 国产在线观看免费视频软件| 男人的天堂av亚洲一区2区| 中文字幕亚洲色图| 久久精品国产亚洲7777| 韩国18福利视频免费观看| 95免费观看体验区视频| 国产免费一区二区三区免费视频 | 亚洲色大成网站www永久男同| 亚洲av无码潮喷在线观看| 久久亚洲国产成人影院网站 | 无码国产精品一区二区免费式直播 | 久久久久亚洲AV无码专区体验| 久久精品亚洲福利| 俄罗斯极品美女毛片免费播放| 毛片大全免费观看|