java 框架 java是怎么分層的?
java是怎么分層的?分層結(jié)構(gòu):不同的功能代碼被封裝成類,具有相同功能的類被封裝成包,也稱為層。實(shí)體類:封裝數(shù)據(jù)是數(shù)據(jù)的載體。數(shù)據(jù)在層之間傳輸。數(shù)據(jù)庫中表的數(shù)量決定了程序中實(shí)體類的數(shù)量。實(shí)體類的名稱與
java是怎么分層的?
分層結(jié)構(gòu):不同的功能代碼被封裝成類,具有相同功能的類被封裝成包,也稱為層。實(shí)體類:封裝數(shù)據(jù)是數(shù)據(jù)的載體。數(shù)據(jù)在層之間傳輸。數(shù)據(jù)庫中表的數(shù)量決定了程序中實(shí)體類的數(shù)量。實(shí)體類的名稱與表名一致,實(shí)體類中屬性的名稱與表名字段的名稱一致。持久性類:該層中的類與數(shù)據(jù)庫交互,即數(shù)據(jù)持久性。與數(shù)據(jù)庫交互的所有代碼都在該層的類中。這個(gè)名字叫道。業(yè)務(wù)類:業(yè)務(wù)類用于處理業(yè)務(wù)邏輯的代碼,這一層稱為服務(wù),頁面表示層用于表示或收集數(shù)據(jù)。Servlet類也屬于表示層。R工具類:在開發(fā)中,如果需要添加函數(shù),只需在每一層的類中添加方法即可。此工具通常放在util包中。原則:Web->servlet->service->dao->數(shù)據(jù)庫->dao->service->servlet->jsp。現(xiàn)在很多公司的開發(fā)人員都應(yīng)該采用MVC架構(gòu)。
MVC是所謂的模型、視圖、控制器。
每一層都有明確的分工。
對(duì)于簡單的項(xiàng)目,不管nignx如何,網(wǎng)關(guān)通常都會(huì)將請(qǐng)求從前端發(fā)送到后端,首先發(fā)送到控制器,然后發(fā)送到服務(wù)層,然后發(fā)送到Dao層。
這里的服務(wù)層就是所謂的業(yè)務(wù)層,專門負(fù)責(zé)業(yè)務(wù)處理操作,而Dao層則負(fù)責(zé)處理數(shù)據(jù)庫,將數(shù)據(jù)庫中的數(shù)據(jù)帶回服務(wù),經(jīng)過服務(wù)處理后返回控制器層??刂破魍ㄟ^視圖解析器解析頁面,并通過瀏覽器呈現(xiàn)頁面。
基本上,我認(rèn)為答案是顯而易見的。也就是說,Java業(yè)務(wù)邏輯是在服務(wù)層編寫的。
事實(shí)上,服務(wù)層涉及接口和接口實(shí)現(xiàn)。
在編寫代碼時(shí),我們通常為控制器定義一個(gè)調(diào)用接口。
實(shí)際上,服務(wù)接口的實(shí)現(xiàn)類應(yīng)該是編寫業(yè)務(wù)邏輯的地方。
當(dāng)然,許多公司可能有多個(gè)服務(wù)層,例如,有一個(gè)管理層繼續(xù)對(duì)數(shù)據(jù)進(jìn)行特殊的業(yè)務(wù)處理。這里只是一個(gè)簡單的概述。
每個(gè)公司的每個(gè)項(xiàng)目根據(jù)其自身業(yè)務(wù)可能有不同的體系結(jié)構(gòu)。但本質(zhì)是一樣的。
綜上所述,業(yè)務(wù)邏輯必須作為一個(gè)獨(dú)立的層來處理,這樣便于擴(kuò)展和維護(hù)。記住不要在控制器中編寫所有業(yè)務(wù)邏輯。
每一層都有自己的分工,是捏合在一起的。代碼不僅冗長,而且雜亂無章。
好吧,我希望我的回答能幫助你
!如果你有興趣,可以關(guān)注一下,一起學(xué)習(xí)交流!