最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

關(guān)于MVC的dao層、service層和controller層詳解

 更新時間:2022年02月26日 11:04:08   作者:菜鳥總結(jié)  
這篇文章主要介紹了關(guān)于MVC的dao層、service層和controller層詳解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

MVC的dao層、service層和controller層

1、dao層

dao層主要做數(shù)據(jù)持久層的工作,負(fù)責(zé)與數(shù)據(jù)庫進(jìn)行聯(lián)絡(luò)的一些任務(wù)都封裝在此,dao層的設(shè)計首先是設(shè)計dao層的接口,然后在Spring的配置文件中定義此接口的實現(xiàn)類,然后就可以再模塊中調(diào)用此接口來進(jìn)行數(shù)據(jù)業(yè)務(wù)的處理,而不用關(guān)心此接口的具體實現(xiàn)類是哪個類,顯得結(jié)構(gòu)非常清晰,dao層的數(shù)據(jù)源配置,以及有關(guān)數(shù)據(jù)庫連接參數(shù)都在Spring配置文件中進(jìn)行配置。

2、service層

service層主要負(fù)責(zé)業(yè)務(wù)模塊的應(yīng)用邏輯應(yīng)用設(shè)計。同樣是首先設(shè)計接口,再設(shè)計其實現(xiàn)類,接著再Spring的配置文件中配置其實現(xiàn)的關(guān)聯(lián)。這樣我們就可以在應(yīng)用中調(diào)用service接口來進(jìn)行業(yè)務(wù)處理。service層的業(yè)務(wù)實,具體要調(diào)用已經(jīng)定義的dao層接口,封裝service層業(yè)務(wù)邏輯有利于通用的業(yè)務(wù)邏輯的獨立性和重復(fù)利用性。程序顯得非常簡潔。

3、controller層

controller層負(fù)責(zé)具體的業(yè)務(wù)模塊流程的控制,在此層要調(diào)用service層的接口來控制業(yè)務(wù)流程,控制的配置也同樣是在Spring的配置文件里進(jìn)行,針對具體的業(yè)務(wù)流程,會有不同的控制器。我們具體的設(shè)計過程可以將流程進(jìn)行抽象歸納,設(shè)計出可以重復(fù)利用的子單元流程模塊。這樣不僅使程序結(jié)構(gòu)變得清晰,也大大減少了代碼量。

4、view層

view層與控制層結(jié)合比較緊密,需要二者結(jié)合起來協(xié)同開發(fā)。view層主要負(fù)責(zé)前臺jsp頁面的顯示。

5、它們之間的關(guān)系

Service層是建立在DAO層之上的,建立了DAO層后才可以建立Service層,而Service層又是在Controller層之下的,因而Service層應(yīng)該既調(diào)用DAO層的接口,又要提供接口給Controller層的類來進(jìn)行調(diào)用,它剛好處于一個中間層的位置。每個模型都有一個Service接口,每個接口分別封裝各自的業(yè)務(wù)處理方法。 

關(guān)于dao層/mapper層的一些筆記

1、BaseMapper

Mapper 繼承該接口后,無需編寫 mapper.xml 文件,即可獲得CRUD功能

Mybatis-Plus 是一款 Mybatis 動態(tài) SQL 自動注入 Mybatis 增刪改查 CRUD 操作中間件, 減少你的開發(fā)周期優(yōu)化動態(tài)維護(hù) XML 實體字段。

CRUD:增查改刪,即,create/read/update/delate 主要被用在描述軟件系統(tǒng)中數(shù)據(jù)庫或者持久層的基本操作功能

2、@mapper

使用接口注解的優(yōu)點:

  • 比較方便,快速編寫映射語句

使用接口注解的缺點:

  • 適用于比較簡單的配置,當(dāng)太復(fù)雜了接口就搞不定了。
  • 不能使用動態(tài)SQL,有點雞肋。

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Guava反射工具使用示例詳解

    Guava反射工具使用示例詳解

    這篇文章主要為大家介紹了Guava反射工具使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • 一文詳解如何指定Maven的JDK版本

    一文詳解如何指定Maven的JDK版本

    這篇文章主要介紹了如何修改Maven的可執(zhí)行文件以指定JDK版本,并驗證Maven是否使用了正確的JDK版本,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-03-03
  • java程序中指定某個瀏覽器打開的實現(xiàn)方法

    java程序中指定某個瀏覽器打開的實現(xiàn)方法

    最近工作中遇到一個需求,是要利用java打開指定瀏覽器,整理后發(fā)現(xiàn)有四種解決的方法,所以想著分享出來,下面這篇文章主要給大家介紹了java程序中指定某個瀏覽器打開的實現(xiàn)方法,,需要的朋友可以參考下。
    2017-03-03
  • jmeter接口測試之使用rsa算法加密解密的代碼

    jmeter接口測試之使用rsa算法加密解密的代碼

    這篇文章主要介紹了jmeter接口測試-使用rsa加密解密算法,部分接口采用了rsa加密算法,我們的jmeter 也是可以直接拿來調(diào)用的,不需要開發(fā)配合去掉加密代碼,需要的朋友可以參考下
    2022-03-03
  • SpringBoot整合Hibernate Validator實現(xiàn)參數(shù)驗證功能

    SpringBoot整合Hibernate Validator實現(xiàn)參數(shù)驗證功能

    這篇文章主要介紹了SpringBoot整合Hibernate Validator實現(xiàn)參數(shù)驗證功能,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • SpringCloudConfig之client端報錯Could?not?resolve?placeholder問題

    SpringCloudConfig之client端報錯Could?not?resolve?placeholder問

    這篇文章主要介紹了SpringCloudConfig之client端報錯Could?not?resolve?placeholder?‘from‘?in?value?“${from}“問題及解決方案,具有很好的參考價值,希望對大家有所幫助
    2022-12-12
  • java實現(xiàn)畫圖板功能

    java實現(xiàn)畫圖板功能

    這篇文章主要為大家詳細(xì)介紹了java實現(xiàn)畫圖板功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-09-09
  • SpringCloud中的Feign詳解

    SpringCloud中的Feign詳解

    這篇文章主要介紹了SpringCloud中的Feign詳解,Feign是一個聲明式的Web Service客戶端,以Java接口注解的方式調(diào)用Http請求,同時Feign整合了Ribbon和Hystrix,實現(xiàn)負(fù)載均衡與容斷功能,需要的朋友可以參考下
    2023-09-09
  • Struts2的配置文件方法小結(jié)

    Struts2的配置文件方法小結(jié)

    最近正在學(xué)習(xí)Struts2,在配置文件中遇到好多標(biāo)簽,各種意義不同。下面這篇文章就來給大家介紹關(guān)于Struts2配置文件的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-04-04
  • 如何實現(xiàn)java遞歸 處理權(quán)限管理菜單樹或分類

    如何實現(xiàn)java遞歸 處理權(quán)限管理菜單樹或分類

    這篇文章主要介紹了如何實現(xiàn)java遞歸 處理權(quán)限管理菜單樹或分類,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-01-01

最新評論

甘孜县| 南京市| 东至县| 合肥市| 天柱县| 四平市| 乐平市| 南丹县| 民勤县| 镇宁| 琼中| 台湾省| 高阳县| 长治县| 巴彦县| 晋江市| 定南县| 红桥区| 福贡县| 得荣县| 漳平市| 新疆| 清苑县| 南木林县| 高雄市| 黄梅县| 敖汉旗| 新乡市| 新巴尔虎左旗| 富民县| 汶上县| 滦平县| 英德市| 东海县| 商南县| 商丘市| 拉萨市| 化隆| 淄博市| 鹤山市| 泸水县|