大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Javaweb源碼視頻:Java源碼學習思路

Javaweb源碼視頻:Java源碼學習思路

更新時間:2020-02-27 09:42:06 來源:動力節點 瀏覽2427次


  JavaWeb開發源碼


  在閱讀Tomcat等源碼前,一定要有一定的積累。我的切實體會,也可以說是比較好的階梯是:


Javaweb源碼視頻:Java源碼學習思路


  1、寫過一些Servlet和JSP代碼。注意,不是用什么Struts,它是很難接觸到Servlet精髓的。用好Struts只是皮毛。


  2、看過《Servlet和JSP核心編程》


  3、看過Sun公司的Servlet規范


  4、看過http協議的rfc,debug過http的數據包


  如果有以上基礎,我也不建議你開始讀Tomcat源碼。我建議你在閱讀Tomcat源碼前,讀過Struts源碼,Struts源碼比WebWork要簡單得多。這個框架是可以100%讀懂的,至少WebWork我沒有100%讀懂。我曾經因為讀懂了Struts源碼,自己寫過一個Web框架。


  當然,在讀Struts框架前,最好看過它的MailReader等demo,非常非常不錯的。


  如果你做過一些Struts項目,那么讀它時就更得心應手了。


  在讀Struts前,建議看看mvnforum的源碼,它部分實現了Struts的功能,雖然這個BBS做得不敢恭維。


  如果你讀過Struts,再開始考慮Tomcat源碼閱讀吧。


  不過,我還是不建議直接讀它,先讀讀onJava網站上的系列文章《HowTomcatWorks》吧,它才是Tomcat的最最簡易版。它告訴你HttpServletRequest如何在容器內部實現的,Tomcat如何通過Socket來接受外面的請求,你的Servlet代碼如何被Tomcat容器調用的(回調)。


  學習JSP,一定要研讀容器將JSP編譯后的Servlet源碼。


  為什么我總是稱呼Tomcat為容器,而不是服務器?這個疑問留給大家吧。


  如果你一定要讀Tomcat,那么就讀Jetty吧。至少它是嵌入式,可以直接在eclispe里面設置斷點debug。雖然Tomcat也有嵌入式版本。


Javaweb源碼視頻:Java源碼學習思路


  Java數據庫源碼閱讀


  我建議,先讀讀Sun的JDBC規范。


  我想你一定寫過JDBC的代碼,那么這時候可以開始閱讀源碼了。


  如果了解JDBC規范(接口),那么它的實現,JDBCDriver就一定要開始了解,我的建議是,讀讀mysql的jdbc驅動,因為它開源、設計優雅。在讀mysql的JDBC驅動源碼時,建議看看mysql的內幕,官方正好有本書,《MysqlInternals》,我五年前讀過一部分。比如你可以知道mysql的JDBC驅動,如何通過socket數據包(connect、query),給這個C++開發的mysql服務器交互的。


  通過上面的閱讀,你可以知道,你的業務代碼、JDBC規范、JDBC驅動、以及數據庫,它們是如何一起協作的。


  如果你了解這些內幕,那么你再學習Hibernate、iBatis等持久化框架時,就會得心應手的。


  讀過JDBC驅動,那么下一步一定要讀讀數據庫了。而正好有一個強大的數據庫是用Java開發的,Hsqldb。它是嵌入式數據庫,比如用在桌面客戶端軟件里,如MailClient。


  Java通訊及客戶端軟件


  我強烈推薦即時通訊軟件wildfire和Spark。你可以把wildfire理解成MSN服務器,Spark理解成MSN客戶端。它們是通過XMPP協議通訊的。


  我曾經在一個項目中,定制過Spark,當然也包括服務端的一些改動。所以它們的源碼我都讀過。


  我之所以推薦它們。是因為:


  1、XMPP夠輕量級,好理解


  2、學習Socket通訊實現,特別是C/S架構設計


  3、模塊化設計。它們都是基于module的,你既可以了解模塊化架構,還可以了解模塊化的技術支撐:Java虛擬機的ClassLoader的應用場景。


  4、EventDriven架構。雖然GUI都是Event驅動的,但Spark的設計尤其優雅


  這么說吧,讀它們的源碼,你會為做一名程序員而自豪,因為無論是他們的架構設計還是代碼,都太漂亮了。


  Java企業級應用


  當然了,就是Hibernate、Spring這類框架。


  在讀Spring源碼前,一定要先看看RodJohnson寫的那邊《J2EEDesignandDevelopment》,它是Spring的設計思路。注意,不是中文版,中文版完全被糟蹋了。


  在讀Hibernate源碼前,一定要讀讀GavinKing寫的那本《HibernateinAction》,同時,應該再讀讀MartinFowler寫的《企業應用架構模式》,它專門談到持久化框架的設計思路。當你覺得這兩本書讀透了,再去看它們源碼吧。


  而且,在讀源碼前,你會發現它們用到很多第三方Jar包,二三十個,你最好把那些Jar包先一個個搞明白。


  說到企業應用,一定會涉及到工作流。我當年讀過jBPM的源碼,網上有介紹jBPM內核的文章(銀狐)。我感覺它的內核也就兩千行,不要害怕。我曾經閱讀jBPM源碼的博客。


  當然了,讀工作流源碼,前提是一定要對其理論模型有深入的了解,以及寫過一些demo、或做過一些項目。


  dojo源碼它的架構設計得很優雅,仿Java的import和extends。但實際應用起來一塌糊涂。我們當年基于這個開發了自己的框架,不過我不是主力。


  Flex源碼Flex08年底剛剛開源后,我就用它做過一個中型項目,應該說是國內的技術先行者。當時市面沒有有深度的書,也沒有開源項目。我純粹是看Flex的Help文檔和源碼,把項目搞定的。兩三年過去了,現在覺得系統設計得蠻優雅的。


Javaweb源碼視頻:Java源碼學習思路


      以上就是動力節點Java培訓機構小編介紹的“Javaweb源碼視頻:Java源碼學習思路”的內容,希望對大家有幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。


提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 欧美日韩国产成人综合在线 | 青青99| 99麻豆久久久国产精品免费 | 国产在线视频你懂得 | 亚洲精品久久99久久一区 | 愉拍精品视频在线观看 | 五月婷婷色网 | 精品视频网站 | 亚洲综合在线观看视频 | 91色综合综合热五月激情 | 一级黄色录像免费观看 | 免费av一区二区三区 | 国内精品久久久久影院亚洲 | 4hu影院永久在线播放 | 青青草国产一区二区三区 | 久久综合九色综合97婷婷群聊 | 欧美日韩精品一区二区三区 | 国产色婷婷精品综合在线手机播放 | 狠狠狠地在啪线香蕉 | 欧美日韩精品一区二区三区 | 日韩毛片免费观看 | 日本a视频在线 | 色涩在线观看 | 欧美日韩在线精品成人综合网 | 正在播放亚洲一区 | 成人欧美精品大91在线 | 九九影音 | 亚洲 欧美 中文字幕 | 国产亚洲一区二区精品 | 色婷婷91| 成人久久久精品乱码一区二区三区 | 极品欧美人体xxxxoo | 久久www免费人成精品 | 尤物福利视频 | 亚洲一区不卡视频 | 国产精品真实对白精彩久久 | 国产另类视频 | 香蕉视频网站在线观看 | 日日夜夜精品视频 | 日韩精品亚洲一级在线观看 | 免费福利视频网站 |