
文章圖片
很多初學者開始接觸Java EE的時候 , 都會略有些迷茫 , 搞不太懂Java EE與Java之間的關系 , 也不太清楚各個框架都是干嘛的 , 名詞也多 , 內容也復雜 , 不知道從哪個地方開始入手 。 因此 , 我們這篇文章就為給大詳細解讀一下Java EE到底是什么 , 包括哪些方面 , 應該怎樣學習 。
一、Java EE到底是什么?
Java EE實際上是Java語言和API的集合 。 官方說法叫企業級開發 , 實際上最多的就是做Web應用開發 , 這里面的Web應用和單獨一個網站還是有很大區別的 , 例如單獨開發一個靜態頁面 , 很多工具很快就可以完成了 。 而Web應用 , 更多的是指在網絡上 , 以看起來像網站形式提供服務的一個復雜應用 。 例如說Google , 網頁上看著非常簡單 , 就一個框 , 實際上 , 后面有大量的數據庫 , 有大量的推薦算法、查詢算法 , 有廣告推薦服務 , 有排名服務等等 , 可能這些服務 , 在網頁上最終顯示出來的就一句話 , 但是背后的業務程序卻非常復雜 。
像淘寶、京東這些購物網站的后臺 , 都是Java寫的 。 背后要處理的東西非常多 。 比如說下一個訂單 , 就要考慮庫存狀態、訂單的存儲和備份、后臺的訂單處理、狀態變更、出庫入庫、支付系統、結算系統、對賬系統 , 等等 。
而這么復雜的一個系統 , Java EE把它分為三層 , 分別是表示層、中間層、數據層 。 C#中的三層分別是表示層 , 業務邏輯層、數據訪問層 , 只是不一樣的說法 , 但表達的是同一個意思 。 如下圖所示:
所以對于一個簡單的系統 , 比如說圖書管理系統來說 , 按上圖從左到右 , 就分成五個部分 。
1、瀏覽器:負責輸入要查詢的圖書 , 以及把查詢的圖書展示在瀏覽器里供人查看 。
2、視圖展示層:把瀏覽器里輸入的內容包裝一下 , 發給業務處理層 。 比如說瀏覽器里輸入的是“紅樓夢” , 它輸入給業務處理層的內容可能是{“bookname”:“紅樓夢” , “type”:“Query” , 告訴業務處理層 , 這人要查詢一本叫紅樓夢的書 。 同時業務處理層查完了 , 查到一本紅樓夢 , 作者曹雪芹 , 朝代清朝 , 頁數1563頁 , 出版社清華大學出版社 , 返回給它之后 , 它再給包裝一下 , 什么名字大寫 , 圖片放在右邊 , 作者放下下面之類 。 然后給瀏覽器一顯示 , 用戶就看到了 。
3、業務邏輯層:處理一下業務邏輯 , 比如說判斷一下 , 前端傳來是 , 是要查詢 , 還是要刪除這本書 , 或者是要查詢相似的書 , 等等 。 要查詢這本書 , 他就去查一下 , 看這本書庫里有沒有 , 給持久層一個查詢指令 。 要刪除這本書 , 他就先看一下 , 發請求的這個人有沒有權限 , 這本書庫里有沒有 , 刪除這本書這個事要不要記錄在日志里等等 , 確定要刪除了 , 就給持久層發一個刪除這本書的指令 , 發現這個人不能刪除這本書 , 就返回給視圖展示層說警告 , 你的權限不足 , 刪不了 。
4、持久層:用來操作數據庫的 , 把四面八方來的數據庫增刪改查指令都收集到它這里 , 一起處理 , 至于他是開一個數據庫連接還是一百個連接查詢 , 那就是他自己的事了 。
5、數據庫:那就老老實實執行 , 持久層給他什么指令他就干什么 。
所以可以說 , Java EE , 就是實現上面這樣的系統 , 需要的一系列技術的集合 。
二、Java EE與Java語言之間的關系
Java EE是以Java語言為基礎的 , 可以認為Java語言是漢字 , 而Java EE則是不同類型的文章 。 會寫漢字 , 并不代表會寫論文、公文 。 而會寫論文也不代表會寫公文 。
相關經驗推薦
- 游戲手機|一文看懂!你該買游戲手機,還是普通旗艦,不妨看看我的建議
- GPU|一文看懂“風華2號”桌面GPU真實實力
- |電視多少吋最合適?一文詳解!
- 折疊屏|三星Galaxy Z Fold4到底有哪些變化?一文詳細告訴你!
- USB|一文看懂:近萬元的旗艦手機,為何不愿意支持USB3.0?
- 一加科技|驍龍8+主流旗艦改如何選擇?橫向對比,一文帶你看清
- gen.g戰隊|驍龍7Gen1靠不靠譜?從Reno8 Pro體驗說起,一文打消疑慮
- iPad|推遲發布,moto和一加新品是否值得等?一文看懂它們都升級了啥
- 貼膜|一文看懂!明明屏幕比你手機膜還硬,是不是就不需要貼膜了?
- 刻錄機|2022年了,光盤刻錄機還有存在的必要嗎?親身體驗,一文讀懂
