前言
之前我們寫的代碼可能發現了,
我們所寫的頁面,
業務邏輯代碼和頁面代碼高度耦合在一起
而我們寫代碼追求的就是,高內聚,低耦合
所以本隨筆也會重新打一次代碼來進行闡述
頁面代碼的編寫
首先我們先建一個java web 項目
接着我們先寫一個頁面代碼
需求的話,就顯示學生信息
頁面結果如下
可能結果並沒有什么錯誤,
結果也是我們想要的結果
不過大家看源代碼就發現了
我們頁面代碼和業務邏輯代碼高度耦合在一起
這就會讓我們的代碼顯得非常的惡心,
也不利於我們多人開發
不過接下來,我們就來看看如何將其分開
代碼的分離
首先,我們要分清楚,我們有哪些實體
所謂實體,就是為了編寫實體類,java中面向對象的分裝
本次代碼就只有一個學生實體類,
所以我們第一步就是封裝學生實體類
接着就建包和建類
然后就是將對應的屬性封裝
這里有一點需要注意
編寫的實體類的屬性要和頁面代碼中的一樣
例如
接着就是編寫方法接口,
為什么是編寫接口,
而不是直接編寫實現類和方法,
因為,在需要寫需求之前,
先把需求的大概用接口表達出來,
這樣有利於我們整個項目的思路梳理
再用實現類去實現,
我們的需求就是顯示學生的信息
所以只需要一個返回List集合的方法
下一步是什么呢?
是實現類的編寫嗎?
不是的,實現類不着急編寫,
先將類調用到頁面代碼中試試效果。
然后去頁面看看效果
報500錯誤,因為我們沒有實例化接口類,
所以我們就去寫一個實現類
提示,在編寫jsp代碼的時候,記得導入需要的包,和實例化接口對象
這個實現類返回的並沒有內容,
這次我再去看看有沒有500錯誤
這次沒有報錯,只是沒有內容
到這一步就差不多成功了,
接下來的工作也只是添加數據
緊接着我們去看一下網頁,
這里需要注意一點,每次修改java文件的時候
都需要重寫部署以下Tomcat
內容就全部出來了
對比
最后我們來對比一下我們前后者之間的不同
首先是業務邏輯和頁面代碼耦合在一起
在項目分工合作的時候,這樣子的代碼,
使得后台程序員和前端開發人員效率大大降低,
也使代碼變得非常的惡心
后者如下
項目結構如下:
這完全符合java面向對象的思想,
將實體封裝,提供方法實現功能,
在以后的學習,
這些代碼會更加的簡潔
好啦,今天就說到這
謝謝欣賞
(`・ω・´)ゞ敬禮っ