學習JavaEE已經有一段時間了,自覺得對JavaEE也是有一點地認識和理解的。若是有菜鳥也想學習JavaEE的話,那麼,下面推薦一下個人學習進階步驟(僅表明我我的):html
①先學JAVA的基本語法。如Logic Java、Java oop 等,精通面向對象的思想:封裝、繼承和多態,以及後面學的接口。數據庫
( 其中封裝和繼承稍微簡單一點,多態比較難一點;但能不能理解好多態,又是能不能理解面向對象思想的重要一步,而接口,學習起來並不難,難就難在如何運用好,在這裏,教你們一個理解接口的簡單方法:接口就是一種規範。)編程
②系統的學一下數據庫。像數據庫中的五大範式、事務調度、數據倉庫、數據挖掘等很專業的知識,咱們都沒有必要掌握;但我這麼說,並不表明咱們就不要學數據庫了。像數據庫中的SQL語句是必定要精通的,這對之後的學習頗有幫助.有些常會出錯的,必定要注意.好比,Select語句中where後面多個條件的鏈接用的是and而不是,(逗號);Insert語句中Values後接的是(),括號中的值用逗號隔開;Update語句後面必定要有關鍵字Set;Delect刪除記錄時,必定要記得加where條件;聚合函數Count後面要加(*)或者你取的數據庫表的別名。設計模式
(最好能熟練運用SQLServer、 DB二、MySQL、Oracle中的一個或幾個)tomcat
③再學JSP、Servlet。掌握最基本的JSP代碼、JSP指令(page指令、include指令、taglib指令)、JSP動做、servlet和一些XML配置文件方面的知識,JSP比起之後要學的Struts而言,難度要小不少,可是光看書是不夠的,必定要多作一些小項目.框架
(推薦你們按照書上的例子作一些小的網站,最好採用JSP + JavaBean的設計模式,這樣能夠爲之後學習MVC打下基礎)eclipse
④透徹的理解MVC編程思想。書上經典的例子必定要會作,代碼能夠不記住,但MVC的編程思想必定要理解並可以靈活的運用函數
(雖然,MVC並不能算是一種技術,但我依然把它單獨列爲一個階段,可見其重要。若是這個理解不了,JavaEE之後就真的無法學了)工具
⑤在就是學習Struts框架。學習Struts,要認真琢磨它的運行原理和執行流程,特別是ActionForm、Action組件的做用和Struts-config.xml這個核心配置文件每一處用到的配置。oop
(學到這一步,纔算是真正接觸了JavaEE,以上學的東西不過是爲SSH三大框架的學習作好鋪墊.固然,這個時候就要用到J2EE的開發工具了,我的推薦eclipse或者MyEclipse,其實MyEclipse也就是eclipse的豪華版,一個收費,一個不收費)
此外,還要熟悉Struts標籤,掌握自定義標籤是如何使用的。
(但這個時候千萬不要追求大而全,只學習幾種經常使用的標籤就能夠了,重點放在bean和logic標籤上,Struts的html標籤和普通的html標籤沒什麼區別,因此……你懂的)
還有,要準確的理解:Action、ActionForm、biz、dao這幾個層之間的關係.
(本質仍是MVC的設計模式。Action做用:響應用戶請求,調用後臺邏輯,跳轉其餘頁面。)
多思考一下,多問本身幾個爲何。譬如Struts框架既然是一個半成品,那咱們使用它的好處是什麼,它是如何響應客戶端請求的,咱們又是如何擴展和配置的等等。
最後,在學習一下Struts2.
(Struts2雖然和Struts1在名稱上很相像,但兩者有本質上的區別;Struts2是在另外一個著名框架WebWork基礎上發展而來)
⑥最後學習Hibernate和Spring,如今Hibernate和Spring也是至關流行的。
Hibernate使用時只須要操縱對象,使開發更對象化,拋棄了數據庫中的思想,徹底的面向對象思想。但它在只針對某一對象(單個對象)簡單的查改刪增比較實用,批量修改、刪除則不是它的強項。
Spring是一個非侵入性的輕量級框架,容許在應用系統中自由地選擇和組裝Spring的各功能模塊,而且不強制要求應用中的類必須從Spring 的系統API中的某個類來繼承或者實現某個接口。同時也提供和其它框架集成的接口,如與Hibernate、Struts 的集成等,便於應用開發.
上面是我粗略地勾勒了一下學習JavaEE的曲線。概括一下:學習Java是須要按部就班、實例驅動、思考總結的。至於其餘的,估計你們工做之後慢慢琢磨,不過學這東西,還要看你們的天賦和造化了,反正我是看的雲裏霧裏的,頭都大了。這裏面涉及的知識點都不少,須要咱們耐心細緻地學習。你們在作項目的時候會發現各類各樣的異常和問題。不要懼怕,由於這些錯誤都是咱們的好朋友,咱們要把它們統統都記錄下來,並堅韌地排除掉它們。這裏要記住:儘可能避免重複犯錯,不要在同一個地方跌倒兩次。總之,這個一個相對比較枯燥、耗時間和耗精力的階段。咱們要作的就是不斷地參考,不斷地思考,不斷地總結,最好還能和志同道合的人不斷地爭論。
(記得我最瘋狂的一次是:一天都沒出門,從早上7點起來開始敲代碼,一直到凌晨1點,連吃飯都在寢室解決.其實當你真正進入代碼的世界,你會將周圍的一切都忘了.)
推薦學習使用的軟件(都是我用過的,沒用的暫時忽略):
1.Web容器:TomCat 7.0、TomCat 6.0(我的感受沒什麼區別,還有,改端口號是在tomcat的conf文件下server.xml配置文件中。)
2.開發工具:MyEclipse 9.0、Eclipse 3.2(注意3.2版本是裝不上Tomcat 7 的。)
3.網頁設計工具:Dreamweaver CS五、CS3(我的推薦用CS5,由於用CS3時,JavaScript代碼不注意寫錯了,找都找不到,很頭疼的;CS5帶了糾錯的功能,雖然還不能像Eclipse那樣,不過已經很不錯了)
4.數據庫:SQL Server 2005/ 2000、Oracle 11g(Oracle 不怎麼會用,學習中……)
最後,祝你們學的實用,學的開心!!!
長孫如水
2011年8月6日