JavaWeb學習路線


 

  • 首先在詳述Javaweb學習路線之前,先簡單描述下JavaWeb應該了解和學習到的東西:什么是JavaWeb、JavaSE、JDBC、數據庫基礎、HTML+CSS和JS等Web前端內容、javaweb三大組件、Java三大框架、等。

  一、什么是JavaWeb?

  Java Web,是用Java技術來解決相關web互聯網領域的技術總和。web包括:web服務器和web客戶端兩部分。Java在客戶端的應用有java applet,不過使用得很少,Java在服務器端的應用非常的豐富,比如Servlet,JSP和第三方框架等等。所以,總的來說JavaWeb主要服務器端的應用;在B/S架構中用Java語言來編寫Server中的內容以及數據庫的搭建和數據的存儲,使Server能與browser進行通信。

B/S架構結構圖:

  二、JavaSE學習路線

  Java SE 是Java平台標准版的簡稱,其包括基礎語法、面向對象、工具類、集合框架和框架底層原理。

  基礎語法:包括基礎數據類型,引用數據類型,流程控制,數組,類與方法,文檔注釋,面向對象概念,面向對象特性(封裝、繼承、多態、抽象),接口的概念(耦合問題),內部類,數據類型轉換,字符串處理、數學運算、日期與時間處理,i/o流操作,多線程,文件操作,泛型,集合框架(List),枚舉,反射機制。等。

  在j2se階段,重在熟練掌握if語句、for循環的運用,接口、繼承、構造方法的理解和使用,學會查API文檔。
這個階段的難點在於集合、泛型、jdbc等內容,需要了解其基本的用法和意義。  

  三、JDBC原理

  jdbc是Java數據庫連接(java DataBase Connectivity)技術的簡稱,由一組使用java編寫的類與接口組成,可以為多種關系數據庫提供統一訪問。Sun公司提供了JDBC的接口示范 ——JDBC API ,而數據庫廠商或第三方中間廠商根據該接口規范提供針對不同數據庫的具體實現——JDBC 驅動。 主要需要了解JDBC關於數據庫的接口,包括JDBC原理,JDBC連接庫,JDBC API

  四、數據庫基礎
  可使用SQLserver、MySql、Oracle,三種可任選一種,並且配合JDBC一起進行學習。須掌握Java鏈接數據庫的語句和有關數據庫的操作,比如增刪改查。

數據庫階段可以說是從只會編一些沒什么實際作用的死程序,到能夠開發小型項目的轉折點,以上三種數據庫至少掌握其中一種,個人建議從Mysql入手。當然數據庫的種類不止這三個,
這里所列的是行內使用最多的數據庫。

  五、Web前端內容

  包括HTML+CSS、JavaScript基礎,jQuery、Bootstrap、UI框架,Ajax基礎。

作為做后端的人,前端的基礎也是必不可少的。如果以后想做前端的話,js是關鍵。如果想走前端,vuejs跟nodejs不可少。如果是后端,Ajax跟Bootstrap框架也是不可少的。

  六、JavaWeb三大組件

  JavaWeb三大組件包括,Servlet組件(接受請求,響應數據),Filter組件(過濾,攔截請求),Listener組件(監聽器),這三大組件構成了javaWeb核心內容,也是作為后端來說,JavaWeb最重要的內容。

  • Servlet組件:

     什么是Servlet組件:處理請求和發送響應的過程是由一種叫做Servlet的程序來完成的,並且Servlet是為了解決實現動態頁面而衍生的東西。

整個過程為:

  1. 客戶端發送請求至服務器端;
  2. 服務器將請求信息發送至 Servlet;
  3. Servlet 生成響應內容並將其傳給服務器。響應內容動態生成,通常取決於客戶端的請求;
  4. 服務器將響應返回給客戶端。

  

  

詳細解釋,見文章底部鏈接。

  • Filter組件:

  什么是Filter組件:Fileter又被通俗稱為過濾網,它是為了把不符合規則的請求和加密文件在中途攔截或修改。

從上面的圖,可以看出一個Filter的工作流程:

一個http請求過來之后

  1. 首先進入filter,執行相關業務邏輯
  2. 若判定通行,則進入Servlet邏輯,Servlet執行完畢之后,又返回Filter,最后在返回給請求方
  3. 判定失敗,直接返回,不需要將請求發給Servlet

通過上面的流程,可以推算使用場景:

  1. 在filter層,來獲取用戶的身份
  2. 可以考慮在filter層做一些常規的校驗(如參數校驗,referer校驗等)
  3. 可以在filter層做穩定性相關的工作(如全鏈路打點,可以在filter層分配一個traceId;也可以在這一層做限流等)、

Filter詳解見文章底部鏈接。

  • Listener組件:

  Listener監聽器是Servlet規范中定義的一種特殊類,它用於監聽web應用程序中的ServletContext、HttpSession和 ServletRequest這三大域對象的創建、銷毀事件以及監聽這些域對象中的屬性發生修改的事件。Servlet規范針對這三個對象上的操作,又把多種類型的監聽器划分為三種類型:

  1. 域對象的生命周期監聽:監聽域對象自身的創建和銷毀。
  2. 域對象的屬性監聽:監聽域對象中屬性的增加和刪除。
  3. 感知監聽(都與HttpSession域對象有關):監聽綁定到HttpSession域中的某個JavaBean對象的狀態的監聽器。

監聽三大范圍是:請求范圍,會話范圍,全局范圍。

Listener詳解見文章底部鏈接。

  七、Java三大框架:

  Java三大框架為:Struts+Hibernate+Spring。Java三大框架主要用來做WEB應用。俗稱的SSH整合框架。

  現在主流框架為SpringMVC+Spring+Mybatis(ibatis),也是我們俗稱的SSM(SSI)框架。

  首個mvc模式的開源框架Struts以及后來的Struts2推出至今已經盛行了14年了,隨着Spring等框架的推出和發展,使得Struts2由於大量的配置文件和獨家標簽庫而顯得相對笨重許多。這些開源框架,到底哪個好用,哪個會被取代之類的問題都不重要,因為他們都是開發的工具,作為工具來說,被更好用的工具替代是必然的,只是時間問題,所以在學習的過程中,一定要掌握工具的用法熟悉實現流程就可以了,不要死磕其實現原理。不過如果你想成為技術大牛,或者想自己也能開發一套框架出來用就另當別論了。

 

 

注:

  1. 推薦使用軟件:Intellij IDEA 下載及破解教程地址:https://www.cnblogs.com/jajian/p/7989032.html              注冊碼申請地址:http://idea.lanyus.com
  2. 推薦菜鳥教程:http://www.runoob.com配合學習
  3. 參考文章:https://blog.csdn.net/qq_35827280/article/details/80390526
  4. Servlet講解參考文章:https://www.cnblogs.com/whgk/p/6399262.html
  5. Filter講解參考文章:https://blog.csdn.net/liuyueyi25/article/details/79189405
  6. Listener講解參考文章:https://www.jianshu.com/p/b85c535dc5fd
  7. SSM考文章:https://blog.csdn.net/qq_41701956/article/details/81215309                           SSH參考文章:https://www.cnblogs.com/MrzhangKk/p/5206356.html
  8. JavaWeb學習路線參考文章:https://blog.csdn.net/qq_35827280/article/details/80390526


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM