我們在本章中,學習了在JAVA EE中,使用struts及hibernate,處理V層傳的數據,并按需求進行了數據的增刪改查操作。同時,我們在章節中,盡可能多的給出了官方文檔的位置。
我們說越是優秀的產品,其官方文檔做的就越是優秀。struts和hibernate正是如此.
其實,我們前面在下載struts和hibernate的壓縮包時,已經將官方文檔下載至了本地計算機。
他們的位置分別為:
1. struts

1. hibernate

在安裝http-server的前提下,我們只需要在命令行下進行該文件夾,并執行http-server便可以啟動一個HTTP服務。然后打開瀏覽器,瀏覽本地的就可以了。
> 在以后的章節中,當我們涉及到知識點時,將給出本地的鏈接地址。
# 帶著問題前行
如果你已經有了TP的基礎,相信一定也是帶著問題來學習的。比如C層如何獲取到V層使用GET和POST方法傳入的值。再比如C層如何向V層傳值。V層獲取到C層傳入的值后,如何展示在頁面上。如何在M層做數據驗驗處理。M層如何連接數據庫。單條查詢如何實現。多條查詢如何實現。如何分頁。如何排序。如何定義顯示字段。等等等等。
# 面向對象及分層
C層是個指揮者,起的永遠是指揮的角色。所以更多的,它是在調用這個方法,然后進行判斷,然后根據判斷結果,再決定調用另一個方法。
M - entity 與數據表相對應,它只實現與數據表相關的操作,比如基本的增刪改查,后面我們還可以用到的索引、外鍵等。 entity中的類文件與我們的ER圖中的E相對應。實際上,在開發中,我們會嚴格參考ER圖來建立實體類。
M - server 服務層. 服務層在C與實體中起到了緩存的作用。它的存在,保證了每一次使用實體類對數據表進行的操作,都是完整的。避免了實體層內部的調用,同時,也避免了C與實體直接打交道。在實際的開發中,服務層將嚴格的與我們的UML類圖中的類相對應,uml類圖中,每存在一個類,我們在編碼的過程中,就會在服務層新建一個類。
面向對象的思想,很編程更加貼進于大腦的思索過程。雖然前期需要一定的學習成本,但一但掌握并靈活運用它的思想后,便會有事半功倍的效果。
# 單元測試
我們在以前的TP開發學習中,并沒有強調單元測試。基本的原因,是由于我們的基礎相對較差,我們并不想人為的提升開發難度;其次,TP分三層。在JAVA EE開發中數據表實體部分,我們使用了navicat對表直接進行操作。
TP三層: V C M\(server\) + navicat
JAVA EE四層 :VCM\(server\)M\(entity\)
# 大道至簡
我們如何分層后,代碼量的確較以前增多了。有人說,老師不是大道至簡嗎?怎么起來代碼越多。
我們說大道至簡的簡,是指思維簡單,實現的方法簡單,代碼的淺顯易懂。在開發,特別是團隊開發中,我們講求的是寫能看的懂的代碼。這里的能看的懂,是指其它隊員能看的懂,是指自己在3個月以后能看的懂,是指我們在不寫注釋的情況下能看的懂。并不是指代碼量的縮減。
所以大道至簡的簡,更多的是需要體現的思維上,體現在交流的難度上,體現在代碼二次開發及維護的難度上。而不是體現在代碼量上。
> 大道至簡:努力的寫出別人能看的懂的代碼!
- README
- 第一章:準備
- 第二章:Hello World!
- 第一節:查看工程文件
- 第二節:JDK、JRE與環境變量
- 第三節:index.jsp
- 第三章:Hello Struts
- 第一節:Web.xml
- 第二節:單入口
- 第三節:Hello Struts
- 第四節:觸發C層
- 第四章:建立數據表
- 第一節:建立實體類
- 第二節:測試一
- 第三節:測試二
- 第四節:引入Hibernate
- 第五節:配置Hibernate
- 第六節:建立連接
- 第七節:實體類映射數據表
- 第八節:完善數據表
- 第五章:教師管理
- 第一節:增加數據--add
- 第二節:增加數據--save
- 1 獲取傳入數據數據
- 2 數據寫入測試
- 3 對接C層
- 第三節:數據列表
- 1 獲取數據
- 2 重構代碼
- 3 C層對接--初始化
- 4 C層添加數據
- 5 V層顯示數據
- 6 獲取數據庫中數據
- 7 顯示性別
- 8 分頁
- 9 條件查詢
- 第四節:修改數據
- 1 edit
- 2 update
- 第五節:刪除數據
- 第六節:總結
- 第六章:重構C層
- 第一節:繼承ActionSupport類
- 第二節:數據驗證
- 第七章:前臺分離(前臺)
- 第一節:環境搭建
- 第二節:運行環境
- 第三節:共享開發環境
- 第四節:生產環境
- 第八章:前臺開發(前臺)
- 第一節:本地化
- 第二節:教師列表
- 1 引入M層
- 2 模擬后臺返回數據
- 3 C與M對接
- 4 C與V對接
- 第九章:前后臺對接(前后臺)
- 第一節:后臺輸出json(后臺)
- 第二節:對接前臺(全棧)
- 第二節:對接API(前臺)
- 第二節:跨域請求(后臺)
- 第三節:重構代碼(前臺)
- 第十章:重構后臺M層
- 第一節:數據訪問DAO層
- 第二節:項目整體重構
- 第十一章:用戶登陸(前后臺)
- 第一節:制定規范
- 第二節:定制測試用例
- 第三節:后臺輸入測試代碼(后臺)
- 第四節:postman(后臺)
- 第五節:新建用戶登陸模塊(前臺)
- 第六節:代碼重構(前臺)
- 第十二章:班級管理(前后臺)
- 第一節:班級列表
- 1 原型開發
- 2 制定規范
- 3 后臺對接開發
- 4 前臺對接開發
- 第二節:Add
- 1 原型開發
- 2 制定規范
- 3 后臺對接開發
- 4 前臺對接開發
- 第三節:Save
- 1 制定規范
- 2 后臺對接開發
- 3 前臺對接開發
- 第四節:Edit
- 1 原型開發
- 2 制定規范
- 3 后臺對接開發
- 4 前臺對接開發
- 第五節:Update
- 1 制定規范
- 2 后臺對接開發
- 3 前臺對接開發
- 第六節:Delete
- 1 制定規范
- 2 后臺對接開發
- 3 前臺對接開發
- 第七節:小結
- 第十三章:班級管理(API)
- 第一節:ER圖
- 第二節:create
- 1 實體層
- 2 dao層
- 3 service(server)層
- 4 action層
- 第三節:ManyToOne
- 第四節:Read
- 1 service(server)層
- 2 action層
- 第五節:update
- 1 service(server)層
- 2 action層
- 第六節:update
- 第十四章:重構服務層