原連結:http://zhidao.baidu.com/question/186186507.html
java的大方向就是j2eej2ee不僅僅是socket編程,具體包括13中核心技術。J2EE的核心API與組件 J2EE平台由一整套服務(Services)、應用程式介面(APIs)和協議構成,它對開發基於Web的多層應用提供了功能支援,下面對J2EE中的13種技術規範進行簡單的描述(限於篇幅,這裡只能進行簡單的描述): 1. JDBC(Java Database Connectivity): JDBC API為訪問不同的資料庫提供了一種統一的途徑,象ODBC一樣,JDBC對開發人員屏蔽了一些細節問題,另外,JDCB對資料庫的訪問也具有平台無關性。 2. JNDI(Java Name and Directory Interface): JNDI API被用於執行名字和目錄服務。它提供了一致的模型來存取和操作企業級的資源如DNS和LDAP,本地檔案系統,或應用伺服器中的對象。 3. EJB(Enterprise JavaBean): J2EE技術之所以贏得媒體廣泛重視的原因之一就是EJB。它們提供了一個架構來開發和實施分布式商務邏輯,由此很顯著地簡化了具有延展性和高度複雜的企業級應用的開發。EJB規範定義了EJB組件在何時如何與它們的容器進行互動作用。容器負責提供公用的服務,例如目錄服務、交易管理、安全性、資源緩衝池以及容錯性。但這裡值得注意的是,EJB並不是實現J2EE的唯一途徑。正是由於J2EE的開放性,使得有的廠商能夠以一種和EJB平行的方式來達到同樣的目的。 4. RMI(Remote Method Invoke): 正如其名字所表示的那樣,RMI協議調用遠程對象上方法。它使用了序列化方式在用戶端和伺服器端傳遞資料。RMI是一種被EJB使用的更底層的協議。 5. Java IDL/CORBA: 在Java IDL的支援下,開發人員可以將Java和CORBA整合在一起。他們可以建立Java對象並使之可在CORBA ORB中展開, 或者他們還可以建立Java類並作為和其它ORB一起展開的CORBA對象的客戶。後一種方法提供了另外一種途徑,通過它Java可以被用於將你的新的應用和舊的系統相整合。 6. JSP(Java Server Pages): JSP頁面由HTML代碼和嵌入其中的Java代碼所組成。伺服器在頁面被用戶端所請求以後對這些Java代碼進行處理,然後將產生的HTML頁面返回給用戶端的瀏覽器。 7. Java Servlet: Servlet是一種小型的Java程式,它擴充了Web伺服器的功能。作為一種伺服器端的應用,當被請求時開始執行,這和CGI Perl指令碼很相似。Servlet提供的功能大多與JSP類似,不過實現的方式不同。JSP通常是大多數HTML代碼中嵌入少量的Java代碼,而servlets全部由Java寫成並且產生HTML。 8. XML(Extensible Markup Language): XML是一種可以用來定義其它標記語言的語言。它被用來在不同的商務過程中共用資料。 XML的發展和Java是相互獨立的,但是,它和Java具有的相同目標正是平台獨立性。通過將Java和XML的組合,您可以得到一個完美的具有平台獨立性的解決方案。 9. JMS(Java Message Service): MS是用於和面向訊息的中介軟體相互連信的應用程式介面(API)。它既支援點對點的域,有支援發布/訂閱(publish/subscribe)類型的域,並且提供對下列類型的支援:經認可的訊息傳遞,事務型訊息的傳遞,一致性訊息和具有持久性的訂閱者支援。JMS還提供了另 一種方式來對您的應用與舊的後台系統相整合。 10. JTA(Java Transaction Architecture): JTA定義了一種標準的API,應用系統由此可以訪問各種事務監控。 11. JTS(Java Transaction Service): JTS是CORBA OTS事務監控的基本的實現。JTS規定了交易管理員的實現方式。該交易管理員是在高層支援Java Transaction API (JTA)規範,並且在較底層實現OMG OTS specification的Java映像。JTS交易管理員為應用伺服器、資源管理員、獨立的應用以及通訊資源管理員提供了事務服務。 12. JavaMail: JavaMail是用於存取郵件伺服器的API,它提供了一套郵件伺服器的抽象類別。不僅支援SMTP伺服器,也支援IMAP伺服器。 13. JAF(JavaBeans Activation Framework): JavaMail利用JAF來處理MIME編碼的郵件附件。MIME的位元組流可以被轉換成Java對象,或者轉換自Java對象。大多數應用都可以不需要直接使用JAF。第一個階段(java基礎階段)1.java文法2.物件導向3.常用的api4.介面編程5.多線程6.檔案io7.java網路編程..看看 張孝祥老師的 java視頻 (不過張孝 祥老師普通話不是很好,而且語速很慢,不過技術是不用說的啦!感謝張老師的無私奉獻了,呵呵)第二個階段 (資料庫階段)1.oracle2.mysql3.sql server目前中國軟體公司用的最多的三大主流資料庫是sql server,mysql ,oracle .目前看來oracle資料庫越來越流行了。一般情況下PHP對應MySQL資料庫;ASP對應SQL資料庫;JSP對應ORACLE資料庫。所以大家會經常看 到市場上JAVA培訓都是用的ORACLE資料庫,其實你學會了ORACLE資料庫,再去學習MySQL、SQL數 據庫,你會覺得有很多相似的之處,學起來也容易上手了。oracle我推薦韓順平老師 oracle視頻 (韓老師授課很有趣,特適合基礎不太好的人。講課有一套)第三個階段 (web開發階段)1.html2.css3.javascript這三個部分是進行web開發的必須技術.一定要好好學習.不過我當時沒有發現有講的特別好的。好像很多老師都講架構和後台,介面這塊不多,所以就沒有什麼好推薦的了,大家可以在網上找找看看,<<別具光芒>> 這本書講的挺好,不過不太適合初學者,可以看看孫鑫老師視頻的《HTML語言速成》。第四個階段 (j2ee 中級部分)1.servlet2.jsp3.mvc這個階段是接近企業的需求了,所以學習起來,難度偏大,如果前面沒有學習紮實,會比較麻煩,我就是這樣的,前面沒有吃透,就學習j2ee 中級,搞得我消化不良。所以小弟我中心的告誡大家,把前面的學好,再學習第四個階段,這裡的mvc思想不太好理解,是學習的重點。同時要學習tomcat/jboss/wl 這些伺服器所以,你可能感到要學習的東西一下多了很多,其實我就在這裡動搖過,有那麼一段時間,又想放棄了。可是一想到 房東那種不屑的表情,我就想,一定要好好學習,混出個人樣來。我家是農村的,回去就是種地,當公務員我沒有關係,再說會老家我學習的專業也用不上,要不就是當個網管什麼的,不說了,反正當時心情很複雜吧。這個階段我推薦韓順平老師 servlet視頻 jsp視頻 (這裡也特別謝謝韓順平老師,我是比較喜歡他講課的風格,因為我當時基礎不好,所以不敢看講的太理論的課。)第五個階段 (j2ee 進階部分)1.struts2.hibernate3.spring學習完Servlet、JSP然後再去學習架構Struts、Hibernate、Spring等最前沿的最流行的網路編程必備的軟體技能。 推薦的參考書籍是美河圖書提供《Servlet與JSP核心編程》 架構的基礎就是Servlet、JSP。首先大家應該學習的是Struts架構,典型的MVC模型。推薦學習視頻是 張小靜的Struts視頻。(網上有孫鑫的視頻嘛,主要就是講的Struts、Hibernate、Spring這三個架構,但是這個好像是偷錄的效果不好,聽起來比較吃力,銜接的不好)推薦書籍孫衛琴編著《精通Struts基於MVC的Java.Web設計與開發》 然後就是Hibernate架構,推薦李興華老師的Hibernate視頻,參考書籍孫衛琴 《精通Java對象持久化技術詳解》 最後關於Spring架構的視頻,在網上你可以搜尋到很多,但是系統講解的真的沒有發現,本著對大家負責的態度,不敢亂推薦,大家到網上搜一下,也許現在有了也可能。 學完上述三個階段的內容,就在看看xml,ajax,ejb這些知識!尤其是的Ajax用得非常火,我們公司就用,ajax的架構流行的是(jquery,dw),我們公司用的是jquery.這裡提一 下,學習Ajax之前一定要有JavaScript的基礎,推薦視頻張孝祥JavaScript網頁開發,這套視頻有相應 的配套書籍《JavaScript網頁開發》