日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

史上最全总结!Util、POJO、domain、entity、model、DAO、DTO、view、mapper、service、controller的作用和区别分析

發(fā)布時間:2024/2/28 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 史上最全总结!Util、POJO、domain、entity、model、DAO、DTO、view、mapper、service、controller的作用和区别分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 前言
  • 工具類層
    • Util
  • 數據層
    • POJO對象
    • domain
    • entity
    • model
    • view
    • DTO
    • 總結
  • 數據訪問層
    • DAO
    • mapper
  • 業(yè)務層
    • service
  • 控制層
    • Controller


前言

做開發(fā)項目時,總會遇到這些包,理清他們的層次,非常有助于我們對于項目的理解和建立。

現階段CSDN上貌似沒有很系統,很詳細的關于層級類的解釋。因此總結了一下自己的經驗和思考,也算是小小的回饋一下一直幫助自己的CSDN。


工具類層

Util

util = 工具

顧明思義,util層就是存放工具類的地方,對于一些獨立性很高的小功能,或重復性很高的代碼片段,可以提取出來放到Util層中。


數據層

POJO對象

POJO = plain ordinary Java object = 普通Java對象

PO:持久對象,與數據庫中的表相映射的Java對象

VO:業(yè)務層之間數據傳遞的對象

POJO:簡單無規(guī)則Java對象,只有屬性+get+set方法

下面要講的這幾個包,本質上都是POJO類


domain

domain = 域

域是一個大范圍,如簡歷域包括工作經驗表、項目經驗表、簡歷基本信息表。 在domain包中,就可以定義一個大的簡歷對象,將三個表的內容整合在一個對象中,作為整體操作。


entity

entity = 實體

嚴格和數據庫相對應,數據庫中有什么字段,entity包中的類就有什么字段。因此當操作表時,操作這個類即可。

比如user表中有name、id、age,則entity包中對應的同名類也只有這三個同名屬性。


model

Model = 模型

當用model當包名時,一般里面存的是實體類的模型,是用來給后端用的。

比如user表中有name、id、age,出于安全原因,我們需要把用戶的密碼定義在另一表中,即user_passwd表,但進行相關操作時,我們往往需要將兩個表關聯使用,每次定義都很麻煩。

因此可以在model層中定義user_model類,將user表中的信息與user_passwd表中的信息整合成一張綜合表,這樣在進行操作時只需調用綜合表,就可以完成對兩個表的關聯操作


view

view = 視圖

當用view當包名時,一般里面存放的是對實體表的映射類(視圖類),是用來給前端用的。

即:有時候我們僅僅需要獲得某一個表的幾個字段,所以此時可以用view存儲這幾個字段。

比如user表中有name、id、age,出于某些原因,我們只需要向用戶展示name和id值,但進行相關操作時,我們往往需要對user表進行很復雜讀處理,每次定義都很麻煩。

因此可以在view層中定義user_view類,將user表中的name、id存入user_view視圖,這樣在進行操作時只需調用視圖表,就可以完成相對應的操作


DTO

DTO = Data Transfer Object = 數據傳輸對象,與view的用法相同,不過是叫法不同


總結

  • 如果想對幾個表綜合操作,就用domain

  • 如果是嚴格對數據庫表操作,就用entity

  • 如果想顯示某個幾個表的綜合信息,就用model,注意model包一般放在service層。

  • 如果只想展示某個表中的幾段信息,就用view,注意view包一般放在controller層

  • 上述包中的類都屬于POJO類。


數據訪問層

DAO

主要針對于數據表的操作,可以理解為一張數據表,就有一個DAO與之對應,與數據庫的操作,增刪改查等方法

舉例:對于user類,其對應的dao包就是對user表中數據的增刪改查方法。


mapper

mapper層 = dao層,若使用mybatis框架,則其生成的類名字是mapper,其實就是dao層。


業(yè)務層

service

由于Dao里面存放了對表操作的方法,entity類中存放了映射表的POJO類。

Service的作用就是將Dao和entity類整合起來,進行再次封裝,封裝成一個方法,我們調用這個方法,就實現了對某個表的增刪改查操作。


控制層

Controller

負責請求轉發(fā),接受頁面?zhèn)鬟f過來的參數,根據參數的不同,是調用不同的Service層方法進行操作,操作完成后將返回結果傳遞給頁面。


喜歡就點個贊吧!

超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生

總結

以上是生活随笔為你收集整理的史上最全总结!Util、POJO、domain、entity、model、DAO、DTO、view、mapper、service、controller的作用和区别分析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。