亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

?J2EE和Java Learning Path該如何理解

發布時間:2022-01-11 11:22:51 來源:億速云 閱讀:105 作者:柒染 欄目:編程語言

這篇文章主要為大家分析了J2EE和Java Learning Path該如何理解的相關知識點,內容詳細易懂,操作細節合理,具有一定參考價值。如果感興趣的話,不妨跟著跟隨小編一起來看看,下面跟著小編一起深入學習“J2EE和Java Learning Path該如何理解”的知識吧。

J2EE編程
首先一定要學習好JNDI,JNDI是App Server定位服務器資源(EJB組件,Datasouce,JMS)查找方法,如果對JNDI不熟悉的話,EJB,JMS這些東西幾乎學不下去。 JNDI其實就是javax.naming.*這個包,運用起來很簡單。難點在于服務器資源文件的配置。對于服務器資源文件的配置,就需要看看專門的文檔規范了,比如web.xml的寫法,ejb-jar.xml的寫法等等。針對每種不同的App Server,還有自己的服務資源配置文件,也是需要熟悉的。

然后可以學習JTA,主要是要理解JTA對于事務的控制的方法,以及該在什么場合使用JTA。這里可以簡單的舉個例子,我們知道一般情況可以對于一個數據庫連接進行事務控制(conn.setAutoCommit(false),....,conn.commit()),做為一個原子操作,但是假設我的業務需求是要把對兩個不同數據庫的操作做為一個原子操作,你能做的到嗎?這時候只能用JTA了。假設操作過程是先往A數據庫插一條記錄,然后刪除B 數據庫另一個記錄,我們自己寫代碼是控制不了把整個操作做為一個原子操作的。用JTA的話,由App Server來完成控制。

在學習EJB之前要學習對象序列化和RMI,RMI是EJB的基礎。接著學習JMS和EJB,對于EJB來說,最關鍵是要理解EJB是如何通過RMI來實現對遠端對象的調用的,以及在什么情況下要用到EJB。

在學習完EJB,JMS這些東西之后,你可能會意識到要急不可待學習兩個領域的知識,一個是UML,另一個是Design Pattern。Java企業軟件的設計非常重視框架(Framework)的設計,一個好的軟件框架是軟件開發成功的必要條件。在這個時候,應該開始把學習的重點放在設計模式和框架的學習上,通過學習和實際的編程經驗來掌握EJB的設計模式和J2EE的核心模式。

J2EE規范里面,除了EJB,JMS,JTA,Servlet/JSP,JDBC之外還有很多很多的企業技術,這里不一一進行介紹了。

另外還有一個最新領域Web Services。Web Services也完全沒有任何新東西,它像是一種黏合劑,可以把不同的服務統一起來提供一個統一的調用接口,作為使用者來說,我只要獲得服務提供者給我的WSDL(對服務的描述),就夠了,我完全不知道服務器提供者提供的服務究竟是EJB組件,還是.Net組件,還是什么CORBA組件,還是其他的什么實現,我也不需要知道。Web Services最偉大的地方就在于通過統一的服務提供方式和調用方式,實現了整個Internet服務的共享,是一個非常令人激動的技術領域。Web Services好像目前還沒有什么很好的書籍,但是可以通過在網絡上面查資料的方式來學習。

Java Learning Path

Java作為一門編程語言,最好的學習方法就是寫代碼。當你學習一個類以后,你就可以自己寫個簡單的例子程序來運行一下,看看有什么結果,然后再多調用幾個類的方法,看看運行結果,這樣非常直觀的把類給學會了,而且記憶非常深刻。然后不應該滿足把代碼調通,你應該想想看如果我不這樣寫,換個方式,再試試行不行。記得哪個高人說過學習編程就是個破壞的過程,把書上的例子,自己學習Documentation編寫的例子在運行通過以后,不斷的嘗試著用不同的方法實現,不斷的嘗試破壞代碼的結構,看看它會有什么結果。通過這樣的方式,你會很徹底的很精通的掌握Java。

舉個例子,我們都編過Hello World

public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}

很多初學者不是很理解為什么main方法一定要這樣來定義public static void main(String[] args),能不能不這樣寫?包括我剛學習Java的時候也有這樣的疑問。想知道答案嗎?很簡單,你把main改個名字運行一下,看看報什么錯誤,然后根據出錯信息進行分析;把main的public取掉,在試試看,報什么錯誤;static去掉還能不能運行;不知道main方法是否一定要傳一個 String[]數組的,把String[]改掉,改成int[],或者String試試看;不知道是否必須寫args參數名稱的,也可以把args改成別的名字,看看運行結果如何。

我當初學習Java的時候就是這樣做的,把Hello World程序反復改了七八次,不斷運行,分析運行結果,最后就徹底明白為什么了main方法是這樣定義的了。

此外,我對于staic,public,private,Exception,try{ }catch {}finally{}等等等等一開始都不是很懂,都是把參考書上面的例子運行成功,然后就開始破壞它,不斷的根據自己心里面的疑問來重新改寫程序,看看能不能運行,運行出來是個什么樣子,是否可以得到預期的結果。這樣雖然比較費時間,不過一個例子程序這樣反復破壞幾次之后。我就對這個相關的知識徹底學通了。有時候甚至故意寫一些錯誤的代碼來運行,看看能否得到預期的運行錯誤。這樣對于編程的掌握是及其深刻的。

其中特別值得一提的是JDK有一個非常棒的調試功能,-verbose

java ?Cverbose

javac ?Cverbose 以及其它很多JDK工具都有這個選項

-verbose 可以顯示在命令執行的過程中,JVM都依次加載哪里Class,通過這些寶貴的調試信息,可以幫助我們分析出JVM在執行的過程中都干了些什么。

另外,自己在學習過程中,寫的很多的這種破壞例程,應該有意識的分門別類的保存下來,在工作中積累的典型例程也應該定期整理,日積月累,自己就有了一個代碼庫了。遇到類似的問題,到代碼庫里面 Copy & Paste ,Search & Replace,就好了,極大提高了開發速度。最理想的情況是把一些通用的例程自己再抽象一層,形成一個通用的類庫,封裝好。那么可復用性就更強了。

關于“J2EE和Java Learning Path該如何理解”就介紹到這了,更多相關內容可以搜索億速云以前的文章,希望能夠幫助大家答疑解惑,請多多支持億速云網站!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

灵台县| 惠来县| 蓝山县| 竹北市| 古田县| 裕民县| 镇江市| 茌平县| 长阳| 顺昌县| 祁门县| 富民县| 枝江市| 丽江市| 谢通门县| 类乌齐县| 西充县| 天镇县| 楚雄市| 嘉义县| 奈曼旗| 利辛县| 尼勒克县| 泰宁县| 崇文区| 定兴县| 萍乡市| 灌阳县| 武山县| 玉门市| 巴里| 嘉峪关市| 岳普湖县| 临漳县| 上高县| 封丘县| 莱西市| 福鼎市| 巴青县| 南投县| 资源县|