国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Springboot三層架構(gòu)--DAO層、Service層、Colltroler層--這波我在外太空

這篇具有很好參考價(jià)值的文章主要介紹了Springboot三層架構(gòu)--DAO層、Service層、Colltroler層--這波我在外太空。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

目錄

1.DAO層

Dao層的設(shè)計(jì)

2.Service層

Service層的設(shè)計(jì)

設(shè)計(jì)Service層的優(yōu)點(diǎn)

?Dao與Service的關(guān)系

3.Colltroler層

Collertroler層的設(shè)計(jì)

4.項(xiàng)目中的具體流程


1.DAO層

????????全稱數(shù)據(jù)訪問層,全稱data access object,屬于一種比較底層,比較基礎(chǔ)的操作。具體到對于某個(gè)表、某個(gè)實(shí)體類的增刪改查,即用于數(shù)據(jù)庫的增刪改查,表達(dá)的是對SQL語句的封裝,建議對DAO只做原子操作。有多少張表就有多少個(gè)DAO層。在mybatis中,方法主要與xxx.xml內(nèi)一一對應(yīng),相互映射。

Dao層的設(shè)計(jì)

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


2.Service層

????????全稱業(yè)務(wù)邏輯層,在該層進(jìn)行復(fù)雜的業(yè)務(wù)邏輯處理,且只專注邏輯處理,即對于多個(gè)dao層進(jìn)行封裝、處理。其中需要的數(shù)據(jù)庫操作通過DAO層去實(shí)現(xiàn)。所以我們再Service層需要事務(wù)管理。

????????業(yè)務(wù)邏輯,就是對數(shù)據(jù)庫獲取的數(shù)據(jù)進(jìn)行處理,比如從數(shù)據(jù)庫獲取num=10,邏輯操作是+1,那么+1操作由Service處理。

Service層的設(shè)計(jì)

????????Service層,負(fù)責(zé)業(yè)務(wù)模塊的邏輯應(yīng)用設(shè)計(jì)。同樣是先設(shè)置接口,再設(shè)計(jì)實(shí)現(xiàn)類,接著在配置文件中配置其關(guān)聯(lián)。這樣我們就能在應(yīng)用中調(diào)用Service接口來進(jìn)行業(yè)務(wù)處理。Service層的業(yè)務(wù)類具體要調(diào)用已經(jīng)定義的dao層接口。

service層=service接口(可以根據(jù)業(yè)務(wù)復(fù)雜程度來省略)+service實(shí)現(xiàn)類

設(shè)計(jì)Service層的優(yōu)點(diǎn)

????????我們通過將dao層封裝成Service層,讓Service層去調(diào)用dao層的接口,有利于業(yè)務(wù)邏輯的獨(dú)立性和重復(fù)利用。程序顯得非常簡介。

?Dao與Service的關(guān)系

DAO面向表,Service面向業(yè)務(wù)。后端開發(fā)先數(shù)據(jù)庫設(shè)計(jì)出所有的表,然后每一張表設(shè)計(jì)出DAO層,然后根據(jù)其具體的業(yè)務(wù)邏輯將DAO層封裝成一個(gè)Service層,對外提供一個(gè)服務(wù)。


3.Colltroler層

????????Collertroler層俗稱控制層,負(fù)責(zé)請求轉(zhuǎn)發(fā),接收頁面(前端H5或者App)傳過來的參數(shù),并調(diào)用Service層中定義的方法進(jìn)行業(yè)務(wù)操作,再將處理結(jié)果返回前端。

Collertroler層的設(shè)計(jì)

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


4.項(xiàng)目中的具體流程

????????Controller層調(diào)用Service層的方法,Service層調(diào)用Dao(mapper)層中的方法,其中調(diào)用的參數(shù)是使用Entity層進(jìn)行傳遞的。總的來說這樣每層做什么的分類只是為了使業(yè)務(wù)邏輯更加清晰,寫代碼更加方便,所以有時(shí)候也需要根據(jù)具體情況來,但是大體的都是這樣處理的,因?yàn)樗鋵?shí)就是提供一種規(guī)則,讓你把相同類型的代碼放在一起,這樣就形成了層次,從而達(dá)到分層解耦、復(fù)用、便于測試和維護(hù)的目的。

? ? ? ?entity實(shí)體層(model),存放的實(shí)體類,與數(shù)據(jù)庫中的屬性保持一致,實(shí)現(xiàn)set和get方法。用于各層(DAO,Service、Colltroler)之間對象數(shù)據(jù)的封裝和傳遞

Springboot三層架構(gòu)--DAO層、Service層、Colltroler層--這波我在外太空文章來源地址http://www.zghlxwxcb.cn/news/detail-476627.html

到了這里,關(guān)于Springboot三層架構(gòu)--DAO層、Service層、Colltroler層--這波我在外太空的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • springboot中entity層,Dao層,mapper層,service層和controller層的關(guān)系和作用(通俗易懂版)

    entity(pojo,model)層 entity是存放實(shí)體的類,類中定義了多個(gè)類屬性,并與數(shù)據(jù)庫表的字段保持一致(通過配置文件可使得類中的駝峰命名和數(shù)據(jù)庫表的下劃線所對應(yīng))。 mapper(Dao)層 mapper層為數(shù)據(jù)持久層,mapper層的作用為訪問數(shù)據(jù)庫,向數(shù)據(jù)庫發(fā)送sql語句,完成數(shù)據(jù)的增刪

    2024年02月06日
    瀏覽(28)
  • Springboot中的三層架構(gòu)

    Springboot中的三層架構(gòu)

    ? ? ? ? 目錄 前言 1.Dao(數(shù)據(jù)訪問層/持久層) 2.Service(業(yè)務(wù)邏輯層) 3.Controller(控制層) 總結(jié): 前言 ????????我們在進(jìn)行前后端交互的時(shí)候,會分為 數(shù)據(jù)訪問,業(yè)務(wù)邏輯,接受請求并響應(yīng)數(shù)據(jù)三個(gè)操作 ,這三部分其實(shí)是可以拆分的,讓他們解耦,否則代碼復(fù)用性差并且不

    2024年02月08日
    瀏覽(22)
  • SpringBoot數(shù)據(jù)響應(yīng)、分層解耦、三層架構(gòu)

    SpringBoot數(shù)據(jù)響應(yīng)、分層解耦、三層架構(gòu)

    類型:方法注解、類注解 位置:Controller方法、類上 作用:將方法返回值直接響應(yīng),如果返回值類型是 實(shí)體對象/集合 ,將會轉(zhuǎn)換為json格式響應(yīng) 說明:@RestController = @Controller + @ResponseBody 獲取員工數(shù)據(jù),返回統(tǒng)一響應(yīng)結(jié)果,在頁面渲染展示 在pom.xml文件中引入dom4j的依賴,用于

    2024年02月06日
    瀏覽(32)
  • Java后端開發(fā):SpringBoot項(xiàng)目中的三層架構(gòu)與代碼角色

    目前,大部分后端項(xiàng)目主要目的是暴露功能接口(API)到網(wǎng)絡(luò)上,由前端程序訪問這些接口并獲取數(shù)據(jù),然后展示在界面上,它們之間遵從Restful規(guī)約;還有一部分項(xiàng)目暴露方法,讓前端代碼實(shí)現(xiàn)遠(yuǎn)程調(diào)用,采用的是RPC的思想。 但是無論如何,后端程序存在的意義就是交換、

    2024年02月06日
    瀏覽(25)
  • vue+springboot架構(gòu),后端service層介紹

    本文主要介紹了vue+springboot架構(gòu)中,后端service層的作用和實(shí)現(xiàn)方法,希望能對有興趣的讀者有所幫助。 vue+springboot架構(gòu)是一種前后端分離的開發(fā)模式,后端service層是用來封裝業(yè)務(wù)邏輯和數(shù)據(jù)操作的功能,供controller層調(diào)用和返回結(jié)果。后端service層一般需要做以下幾件事情:

    2024年02月12日
    瀏覽(15)
  • Java——Controller層、Service層和DAO層

    在 Java 的三層架構(gòu)中,通常會涉及到以下幾個(gè)層次:Controller層、Service層和DAO層。 Controller層(控制層):Controller層是應(yīng)用程序的入口點(diǎn),負(fù)責(zé)接收用戶的請求并處理。它通常處理來自前端或客戶端的請求,并將請求轉(zhuǎn)發(fā)給相應(yīng)的Service層進(jìn)行業(yè)務(wù)處理。Controller層負(fù)責(zé)接收和驗(yàn)

    2024年02月04日
    瀏覽(15)
  • Spring Boot集成單元測試調(diào)用dao,service

    Spring Boot集成單元測試調(diào)用dao,service

    溫馨提示:本人開發(fā)上線視頻網(wǎng)站,有想要的看視頻的,可以看看。小松鼠

    2024年02月14日
    瀏覽(22)
  • Dao層、Service層、Entity層、Servlet層、Utils層

    Dao層、Service層、Entity層、Servlet層、Utils層

    這幾天在復(fù)習(xí)高數(shù),還有刷題。 B: 第五周任務(wù) [Cloned] - Virtual Judge (vjudge.net) http://t.csdn.cn/S3imr? G: 第五周任務(wù) [Cloned] - Virtual Judge (vjudge.net) http://t.csdn.cn/UVgfK ? Dao層是數(shù)據(jù)訪問層 Service層是業(yè)務(wù)邏輯層 Entity層是實(shí)體層 Servlet層是控制層 Utils層是工具類層 分層架構(gòu)沒有規(guī)定自

    2024年02月09日
    瀏覽(21)
  • Java中 Controller、Service、Dao/Mapper層的區(qū)別與用法

    在Java開發(fā)中,通常會采用三層架構(gòu)(或稱MVC架構(gòu))來劃分程序的職責(zé)和功能,分別是Controller層、Service層、Dao/Mapper層。 業(yè)務(wù)模塊的邏輯功能設(shè)計(jì),和DAO層一樣都是先設(shè)計(jì)接口,再創(chuàng)建要實(shí)現(xiàn)的類,然后在配置文件中進(jìn)行配置其實(shí)現(xiàn)的關(guān)聯(lián)。接下來就可以在service層調(diào)用接口進(jìn)

    2024年02月06日
    瀏覽(23)
  • 使用mybatisX逆向生成數(shù)據(jù)表實(shí)體類(pojo,dao),mapper,service

    使用mybatisX逆向生成數(shù)據(jù)表實(shí)體類(pojo,dao),mapper,service

    先看使用mybatisX后生成的文件。 1.先在idea安裝mybatisX插件,在file-setting-plugins,搜索mybatisX插件,重新啟動idea即可。 2.在idea編輯器右側(cè)點(diǎn)擊Database,點(diǎn)擊“+”鏈接你的數(shù)據(jù)庫類型,這里我選mysql。 ? ? 輸入root,密碼:xxxx 輸入url:jdbc:mysql://localhost:3306/emos?useUnicode=truecharacterEnc

    2024年02月03日
    瀏覽(19)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包