亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Java > 正文

Java Web架構知識整理

2019-11-06 06:49:32
字體:
來源:轉載
供稿:網友

學習java的同學注意了!??! 學習過程中遇到什么問題或者想獲取學習資源的話,歡迎加入Java學習交流群,群號碼:523047986  我們一起學Java!

 首先談談Java Web需要掌握哪些東西。這里是一些知識點的搜集,暫不做詳細說明,歡迎各位博友補充指正。

1.底層

Java語言相關的就不說了,首先是JVM的結構和工作原理。比較重要的是Java內存模型,各種GC算法,Classloader的加載原理等。個人對底層的一些東西還算比較了解,所以不過多糾結,實際上程序編譯鏈接過程以及二進制文件的處理還是很值得研究的。JVM監控及調優。作為一個開發人員并不一定需要非常熟悉JVM調優的方法,但如果具備JVM監控及調優的能力,將讓你對程序運行狀況了如指掌,對于問題定位也會敏感得多。Java多線程。對于線程安全的理解,以及如何在自己的程序中避免多線程造成的不一致問題等。I/O。Java中常常提到的是BIO/NIO,即阻塞型I/O與非阻塞型I/O,其實并不難理解,結合linux中的同步I/O和異步I/O的實現原理,基本都是相通的,每種I/O方式解決的問題,又存在什么問題,為什么使用epoll。

2.Servlet

  Servlet是運行于服務端的java程序,一般實現自己的Java服務端應用都從HttpServlet類繼承,然后實現自己的init | doGet | doPost | service方法。Servlet的生命周期從其加載開始,首先執行一次初始化,調用init方法,之后便可運行自身的服務,當生命周期結束時,調用destroy方法回收資源,結束服務。

  僅了解原理當然是不夠的,還要實戰能力,在IDE中寫寫簡單的代碼誰都會,然而真正讓一個程序能夠運行起來也還需要點其他的東西,這里我指的是Servlet的容器。servlet的容器有很多,常用的以Tomcat為例,安裝好Tomcat后,在開發時必須包含進Tomcat的lib。IDE確實慣壞了好多人,目錄如何組織,程序如何編譯、如何部署這些問題都被IDE屏蔽掉了,如果要對整體有比較透徹的了解,建議一切從命令行動手。

  具體可參考:《Servlet與jsp核心編程》。

3.框架

  Java Web開發的用到的框架之多簡直令人發指,而且因為版本的更新換代導致的問題也是層出不窮。然而這也是Web技術不斷演化的結果,要么選擇接受,要么引領節奏。

SPRing

  Spring是一個強大而又“輕量級”的Java開發框架,之所以打引號是因為感覺并不是那么輕量。Spring的主要目的在于簡化Java應用開發,以配置方式代替硬編碼方式的編程,模塊解耦,其架構如下圖所示。包括了數據訪問、遠程通信、AOP、核心容器等部分。

 

 Figure 1 Spring體系架構

  Spring的核心主要有三點:

IoC:反轉控制。

  反轉控制就是指將控制權由類內部抽離到容器,由容器類的實例化及動作進行配置管理。

Dependency-injection:依賴注入  

  對象的依賴關系由負責協調系統中各個對象的第三方組件在創建對象時設定。對象不自行創建或管理它們的依賴關系,依賴關系被自動注入到需要它們的對象中。通過參數和配置能夠體會出“注入”這個詞在這里有多形象。依賴注入的最大好處就是松耦合。不需要再類內部去和特定的類進行綁定,而是將一些依賴關系以參數的形式注入到類內部。

aspect Oriented Programming:面向切向編程

   在軟件開發中,分布于應用中多處的功能被稱為橫切關注點。這些橫切關注點往往和業務邏輯是相分離的,將這些橫切關注點與業務邏輯相分離正式AOP要解決的。AOP編程能夠讓遍布在應用各處的功能分離出來形成可重用的組件。是高內聚低耦合的又一個體現,將通用實現模塊與核心業務模塊相分離。

   具體參考:《Spring In Action》

Hibernate

  數據持久化框架其實也有很多,需要掌握的不僅是Hibernate,只是因為Hibernate在以前的企業級應用中用的比較多而已,另外MyBatis也占有相當重要的份額。Hibernate是一個全自動的持久化框架,并不是那么方便,所以很多開發者更傾向于使用MyBatis,淘寶就是這樣。

  Hibernate的工作流程:首先通過configuration對象讀取配置文件;解析映射信息,創建StandardsessionFactory;調用openSession打開session;創建事務transaction,之后進行持久化操作;完成后提交事務,關閉session,關閉sessionFactory。

 Figuer 2 Hibernate工作流程

  要理解ORM的理念:ORM意為對象關系映射。是一種為了解決程序的面向對象模型與數據庫關系模型互不匹配問題的技術。

  hibernate中比較重要的是對象的4種狀態轉換及條件。分別是transient瞬時態、persistent持久態、detached游離態和移除態,狀態轉換如下:

 

 Figure 3 Hibernate對象狀態轉換圖

Struts 2

  Struts出現的最早,也是思想提供者之一,從名字就可以看得出其重要性,其設計目的是為了簡化Java開發,統一事務切面化。

  Struts最關鍵的地方在于Action的執行,攔截器的原理、valuestack及OGNL。

   具體參考:《Struts in Action》

 4.HTTP

  這個不用多談,太重要了,作為Web開發者,如果不特別熟悉Http將會是一件很麻煩的事。

Http的報頭格式Http協議的各種返回碼是什么意思https如何實現B/S架構的工作原理Cookie和Session的原理restful API

5.設計模式

  這里就不列舉23種模式了,個人覺得純粹看書學習《設計模式》并沒有什么用,要在實際應用中碰到,并且多問幾個為什么,而且自己寫代碼時能有使用設計模式的意識才能對各種設計模式有更深的領悟。

 

  當然Web開發遠不止這么些東西,我這里暫時也只好先列些重要的。應用開發后,還有部署的問題,因此又會涉及CDN和負載均衡等問題就更復雜了......

  另外在Web開發的過程中,要養成良好的開發習慣,比如開發之前能夠熟練地使用UML類圖,交互圖等,這將避免你犯很多錯誤。感謝面試官輕虐,自己覺得還有許多不扎實的地方,還需要繼續努力才能對得起這次機會。

學習Java的同學注意了?。?! 學習過程中遇到什么問題或者想獲取學習資源的話,歡迎加入Java學習交流群,群號碼:523047986  我們一起學Java!


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美激情2020午夜免费观看| 亚洲美女精品成人在线视频| 国产色综合天天综合网| 尤物yw午夜国产精品视频| 日韩久久精品电影| 亚洲精品小视频| 98精品国产自产在线观看| 久久久999国产精品| 国产精品久久久久久久久粉嫩av| 亚洲人成在线观| 国产精品欧美一区二区| 国产精品99久久99久久久二8| www国产精品com| 日韩精品视频在线播放| 中文字幕日韩av| 欧美中文字幕视频| 狠狠爱在线视频一区| 久久久久日韩精品久久久男男| 中文国产亚洲喷潮| 九九精品在线播放| 亚洲福利视频在线| 亚洲护士老师的毛茸茸最新章节| 久久久久久久久久久成人| 精品视频久久久久久| 欧美激情在线狂野欧美精品| 午夜精品久久久久久久99热| 97免费中文视频在线观看| 国产精品精品视频一区二区三区| 中文字幕综合在线| 国产69精品久久久久久| 777国产偷窥盗摄精品视频| 久久久精品久久久| 欧美电影免费观看高清| 日韩国产精品亚洲а∨天堂免| 日韩中文在线视频| 日韩免费视频在线观看| 98午夜经典影视| 精品国产一区二区在线| 久久91精品国产91久久跳| 亚洲天天在线日亚洲洲精| 国产精品福利在线| 欧美日韩爱爱视频| 日韩久久免费电影| 精品久久久久久亚洲精品| 福利视频一区二区| 国内精品模特av私拍在线观看| 91在线看www| 91在线国产电影| 欧美精品一区二区三区国产精品| 福利一区视频在线观看| 欧美精品在线免费| 欧美洲成人男女午夜视频| 精品无人区乱码1区2区3区在线| 国产99视频在线观看| 中国日韩欧美久久久久久久久| 成人性生交大片免费观看嘿嘿视频| 国产日韩在线免费| 精品国产一区二区三区在线观看| 欧美成人精品在线观看| 欧美国产中文字幕| 亚洲福利精品在线| 两个人的视频www国产精品| 国产又爽又黄的激情精品视频| 国产精品入口尤物| 91精品国产综合久久香蕉的用户体验| 欧美一级大片在线免费观看| 国产亚洲精品一区二555| 久久久最新网址| 欧美专区国产专区| 国产97在线|亚洲| 日韩av一区二区在线观看| 色综合五月天导航| 欧洲中文字幕国产精品| 久久精品免费电影| 欧美肥婆姓交大片| 欧洲亚洲免费视频| 国产91精品在线播放| 欧美日韩国产中文精品字幕自在自线| 高清亚洲成在人网站天堂| 精品亚洲一区二区三区在线播放| 国产丝袜视频一区| 91av在线精品| 午夜精品免费视频| 国产va免费精品高清在线| 国产精品男人爽免费视频1| 亚洲成av人片在线观看香蕉| 国产精品亚洲第一区| 97精品欧美一区二区三区| 欧美电影免费观看电视剧大全| 精品日韩中文字幕| 黄色一区二区在线观看| 国产精品专区一| 在线播放精品一区二区三区| 国产精品影院在线观看| 欧美激情精品久久久久久久变态| 97在线免费观看视频| 91网站在线免费观看| 国产精品视频在线观看| 精品亚洲一区二区三区在线观看| 欧美综合在线观看| 成人免费看吃奶视频网站| 久久精品国产电影| 亚洲欧美日韩成人| 亚洲黄色免费三级| 久久久99免费视频| 97色在线观看免费视频| 日韩精品视频中文在线观看| 欧美日韩成人在线视频| 最近的2019中文字幕免费一页| 欧美亚洲日本网站| 日韩av在线看| 最近2019免费中文字幕视频三| 亚洲自拍偷拍色片视频| 欧美性生交大片免网| 最近2019中文免费高清视频观看www99| 欧美成年人视频网站| 成人av电影天堂| 国产va免费精品高清在线| 亚洲国产女人aaa毛片在线| 精品一区二区三区四区在线| 91精品国产91久久久久久久久| 成人一区二区电影| 亚洲国产精品人人爽夜夜爽| 4k岛国日韩精品**专区| 亚洲自拍中文字幕| 富二代精品短视频| 欧美成人午夜激情在线| 亚洲国产成人在线播放| 久久久久久网站| 亚洲欧美国产日韩天堂区| 国产成人啪精品视频免费网| 成人性生交xxxxx网站| 国内揄拍国内精品少妇国语| 日韩欧美中文免费| 欧美洲成人男女午夜视频| 欧美激情视频网| 久久久久久网址| 亚洲欧美精品伊人久久| 亚洲精品视频网上网址在线观看| 日韩电影中文 亚洲精品乱码| 啊v视频在线一区二区三区| 精品国偷自产在线视频| 91精品国产自产在线| 欧美大成色www永久网站婷| 亚洲肉体裸体xxxx137| 69影院欧美专区视频| 亚洲女人天堂视频| 亚洲va久久久噜噜噜久久天堂| 中文字幕v亚洲ⅴv天堂| 久久综合久中文字幕青草| 亚洲欧美精品中文字幕在线| 国产精品国产福利国产秒拍| 久久中文字幕一区| 成人精品视频99在线观看免费| 久久久999精品| 日韩美女在线观看| 欧亚精品中文字幕| 日韩欧美在线观看| 亚洲毛片在线免费观看| 欧美在线观看一区二区三区| 成人欧美一区二区三区黑人| 性欧美在线看片a免费观看| 日韩欧美a级成人黄色| 成人黄色免费网站在线观看|