為什麼選擇 Java 想必有很多初學者會像我一樣,不知選擇什麼語言入門。在嘗試了 C、C++、C 、Python、PHP 後,我決定把 Java作 為第一門深入學習的編程語言。這個路著實有點長...... 不過放心,你可以大膽地選擇 Java。如果說 C++ 是編程界的曹操,那 Java 就是司馬懿 ...
為什麼選擇 Java
想必有很多初學者會像我一樣,不知選擇什麼語言入門。在嘗試了 C、C++、C#、Python、PHP 後,我決定把 Java作 為第一門深入學習的編程語言。這個路著實有點長......
不過放心,你可以大膽地選擇 Java。如果說 C++ 是編程界的曹操,那 Java 就是司馬懿,近三十年踏驚濤駭浪如履平地,熬死了無數對手。
誕生之初,Java 飽受爭議。而如今,那些受到攻擊的弱點一個個被解決甚至反超對手。人們開始驚嘆 Java 的生命力,長期以來,Java雄踞編程語言排行榜首位,擁有最多的受眾、最大的市場、最活躍的社區。
TIOBE 編程語言排行榜:https://www.tiobe.com/tiobe-index/
就在我寫這篇博客的今天(18.07.09),我看到了一則消息,JDK 11中將會引入新的GC(Garbage Collection,垃圾回收)演算法 ZGC,能夠處理 TB 級別的 HEAP GC,GC 停頓時間不超過10s,意味著,幾乎所有的民用場合,都可以用Java來寫了,而且可以隨心所欲地造對象,不用像以前一樣小心翼翼了。
當然,每個時期都有冉冉升起的新星。現在 Python 如日中天,Go 野心勃勃,選擇Java 的你,可以選擇喝杯茶看它們鬧騰了(逃......)
什麼是 JavaEE
JavaEE 概念
Java EE,Java 平臺企業版(Java Platform Enterprise Edition),之前稱為Java 2 Platform, Enterprise Edition (J2EE),2018年3月更名為 Jakarta EE(這個名稱應該還沒有得到群眾認可)。是 Sun 公司為企業級應用推出的標準平臺,用來開發B/S架構軟體。Java EE 可以說是一個框架,也可以說是一種規範。
JavaEE 是 Java 應用最廣泛的部分。
JavaEE 與 JavaSE 的區別與聯繫
JavaEE 是在 JavaSE 的基礎上構建的,是對 JavaSE 的擴展,增加了一些更加便捷的應用框架。
除了 EE 和 SE,還有為移動端而生的 JavaME,但目前應用不算廣泛。三者的關係可以用下圖概括:
JavaEE主要技術
JavaEE 號稱有十三種核心技術。它們分別是:JDBC、JNDI、EJB、RMI、Servlet、JSP、XML、JMS、Java IDL、JTS、JTA、JavaMail和JAF。
簡單介紹下需要重點關註的技術。
JDBC
Java 資料庫連接,(Java Database Connectivity,JDBC)是 Java 語言中用來規範客戶端程式如何來訪問資料庫的應用程式介面,提供了諸如查詢和更新資料庫中數據的方法。
JNDI
Java 命名和目錄介面(Java Naming and Directory Interface,JNDI),是 Java 的一個目錄服務應用程式界面(API),它提供一個目錄系統,並將服務名稱與對象關聯起來,從而使得開發人員在開發過程中可以使用名稱來訪問對象。
EJB
企業級 JavaBean(Enterprise JavaBean, EJB)是一個用來構築企業級應用的伺服器端可被管理組件。
Servlet
Servlet(Server Applet),是用 Java 編寫的伺服器端程式。其主要功能在於互動式地瀏覽和修改數據,生成動態 Web 內容。
狹義的 Servlet 是指 Java 語言實現的一個介面,廣義的 Servlet 是指任何實現了這個 Servlet 介面的類,一般情況下,人們將 Servlet 理解為後者。
JSP
JSP(全稱JavaServer Pages)是由 Sun 公司主導創建的一種動態網頁技術標準。JSP 部署於網路伺服器上,可以響應客戶端發送的請求,並根據請求內容動態地生成 HTML、XML 或其他格式文檔的 Web 網頁,然後返回給請求者。
JavaEE框架
JavaEE 擁有廣泛市場的原因之一就是可以使用多種框架來使開發變得簡單。對於框架的選擇多種多樣,目前比較常見的框架組合有 SSH和SSM。在後面的章節中會作詳細介紹。另外Spring本身也提供了多種層次的框架供選擇,可以到Spring官網瞭解詳情。
Spring: https://spring.io/
SSH
Structs + Spring + Hibernate
SSM
Spring +SpringMVC + MyBatis
JavaEE學習路徑
一般來講,初學者應該遵循以下路徑
Servlet -> JSP -> Spring -> 組合框架
Servlet 和 JSP 在日後的開發中雖然不會直接應用,但卻是各種框架的基礎,應該放在開始去瞭解。這兩部分也並不難,相信經過了 JavaSE 的洗禮,只需要進行短期(每天3小時左右,大概兩周)的學習,就可以投入實踐中了。
推薦看視頻 + 擼代碼相結合的學習方式,書本的話可以在大致瞭解以後買過來,遇到理解上的細節再去翻閱。視頻的優點之一是可以根據個人喜好調整倍速,個人以為比上課、看書的效率要高。
最後給大家分享點資料:
[1] 鏈接:https://pan.baidu.com/s/1sMCUtCr8m6w9dYbwC_XqEg
密碼:u28z
[2] 鏈接:https://pan.baidu.com/s/1batnglUmTUJ_lJW2IptqJA
密碼:k288
有時網盤的下載速度過於感人,如何使用迅雷等工具下載網盤分享的內容呢?參見我的文章——
還有一個學習 Java 的良心網站,裡面有 Java 全棧知識,在每個階段都設置了練習內容,誰用誰知道。
上述資源來自互聯網,如有侵犯版權請聯繫我,我會在第一時間處理。
資料僅作為個人學習使用,切勿用在商業用途,請於下載後24小時之內刪除,否則由此引發的法律糾紛及連帶責任本人概不承擔。
歡迎關註 Evan-Gao 的博客