不要上來就學Struts/WebWork/Spring/Hibernate/iBATIS等等架構,先瞭解一下下面一些技術,對於學習架構來說是十分重要的。
一是Java的反射機制和自省機制。大部分架構都用到這兩種機制,因為它們都要實現通過設定檔自動完成類的識別和載入,所以必須要使用反射和自省。尤其是自省機制,對於大家瞭解JSP中的一些知識也是很有協助的。比如,如果在EL中使用
${user.name}
那麼,user這個對象中如果沒有name這個屬性行不行。
還有,是不是Java私人的成員就一定不能訪問。
二是設計模式。GOF的23種模式很重要,這已經不用再多說了。每一種架構都用到了數種設計模式,如果你不懂設計模式,它們的原始碼很難看懂。比如,JUnit中就用到好多種設計模式,畢竟是Gamma做的。包括Composite、Command、Decorator等等。
三是代理機制。代理對於實現一些附加功能非常有協助,在Hibernate中大量地使用到了代理機制。代理機制有兩種,一是Java內建的Proxy,二是CGLIB架構提供的代理。倒不用全懂,但至少得知道代理是個什麼意思。要不即使你會用了,也不會理解它們是如何?的。
四是XML。一定要會寫,對於他的解析,能夠瞭解最好了。兩種方法,DOM和SAX;兩種架構dom4j、digister等等
我覺得最重要的是基礎知識一定要好.我推薦看java編程思想這本書,很多公司筆試的java方面的題目出自這本書.另外JSP,SERVLET,JDBC一定要有所瞭解,這個能說明你在大學的時候實習過,做過一些小項目的.HIBERNATE,STRUTS,SPRING這些東西我不推薦你去學習,我覺得你應該學習如何處理異常,學會用JDBC訪問資料庫,學會如何釋放資源,如何控制資料庫事務,學會如何寫自訂標籤,這樣能夠顯著的提高你的編程水平.
工作一年的後我覺得應該回過去看看大學的資料結構,演算法,作業系統,然後應該對面象對象要有更深刻的理解,設計模式也應該慢慢開始涉及到(JAVA變編程思想這本書建議多看幾次).我不建議工作一年就開始換工作,因為找工作要花時間,新工作就要適應新的架構和新的業務,這樣你就會亂費很多時間的.我還是不建議你去看HIBERNATE,STRUTS,SPRING這樣的東西,雖然你工作中可能要用到它.對於英語我覺得應該早做準備,強迫自己看一些英文方面的書籍,提高自己的口語水平,另外我還要強調一點,適當的參加培訓是很有必要的,上海有很多的外語培訓機構(主要是培訓商務交流),效果很不錯的,不過也很貴的,所以去前一定要計劃好,不要象大學那樣交了錢不去上課或者不認真聽課,那樣就最好先不要去.
工作兩年後,如果你演算法,資料結構,設計模式等等有比較深的瞭解的時候 我覺得HIBERNATE,STRUTS,SPRING的實現方法你應該能夠很快理解.