欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

java中dao層和service層的區(qū)別是什么?

洪振霞2年前13瀏覽0評論

要知道dao層和service層的區(qū)別,那么我們得先從了解每個(gè)層開始,在來理解這兩個(gè)層的區(qū)別就簡單了。

Java后端分層

我們都知道題主問的問題,是web程序的分層思想會談到的內(nèi)容。在web應(yīng)用程序中所謂的分層都是按照mvc的思想做分層操作的,根據(jù)mvc的分層思想我們可以把后端代碼分為:dao---->service---->control---->view

這樣分層的作用就是為了讓代碼各施其職,各盡其用。簡單的理解就是代碼和代碼對于不同的地方有不同的作用,所以根據(jù)代碼的作用把他們按照mvc的思想分為以上四個(gè)層。

各個(gè)層之間相互協(xié)調(diào)工作

各層作用

那么我們從上面的層分別來解釋各個(gè)層的作用:

  • dao層:

dao層就是用來做連接數(shù)據(jù)庫操作的代碼層,我們編寫的程序中數(shù)據(jù)是需要我們從數(shù)據(jù)庫中查詢出來然后在程序中做運(yùn)算。那么做數(shù)據(jù)庫操作的代碼會被分到dao層中,一般情況下dao層中會引用到對應(yīng)表格的實(shí)體類,因?yàn)樽鰯?shù)據(jù)庫操作是需要做查詢,那么做查詢數(shù)據(jù)的保存方式一般是一張表格就一個(gè)實(shí)體類,然后實(shí)體類基本上作用就是用來在各個(gè)層之間做數(shù)據(jù)傳遞。

  • service層:

service層的就是用來做業(yè)務(wù)處理的。我們數(shù)據(jù)庫的表格之間是有關(guān)聯(lián)關(guān)系的,那么我們的程序需要完成一個(gè)業(yè)務(wù),也不是總是一張表解決問題的,這個(gè)時(shí)候完成這個(gè)業(yè)務(wù)功能是需要結(jié)合多個(gè)dao層中數(shù)據(jù)庫操作完成,業(yè)務(wù)邏輯比較復(fù)雜的業(yè)務(wù)模塊是需要做事務(wù)的管理的,否則對于數(shù)據(jù)庫來說會產(chǎn)生垃圾數(shù)據(jù),以及一些誤操作導(dǎo)致的數(shù)據(jù)的不準(zhǔn)確性,和不必要的操作造成的異常。從而違背了數(shù)據(jù)庫完整性要求。

  • control層:

control層的作用就是用來管理請求和業(yè)務(wù)處理之間的交互。一般情況就是用戶在頁面上操作對應(yīng)的操作需要向服務(wù)器方式對應(yīng)的請求,Control層就會接收對應(yīng)的請求,根據(jù)對應(yīng)的請求在調(diào)用對應(yīng)的業(yè)務(wù)處理,在根據(jù)不同的業(yè)務(wù)處理調(diào)用對應(yīng)的數(shù)據(jù)訪問,數(shù)據(jù)訪問把結(jié)果得到給到業(yè)務(wù)邏輯層,業(yè)務(wù)邏輯層在給到Control層,Control層在把對應(yīng)的結(jié)果反饋給用戶。

  • view層:

view層的作用就是用來和用戶做交互操作的。也就是說view層就是我們所說的html前端頁面,展示數(shù)據(jù)給用戶,根據(jù)數(shù)據(jù)做對應(yīng)的操作。

dao層和service層的區(qū)別

根據(jù)上面講解的內(nèi)容可以看到dao層和service層的代碼的作用是完全不同的。作用功能不同,dao層只是為了做數(shù)據(jù)庫操作,service層主要是做整體的業(yè)務(wù)邏輯處理。在service層中是必須得調(diào)用dao層中的代碼來做相應(yīng)的業(yè)務(wù)處理,所以他們兩個(gè)層是相互協(xié)助工作的。

這個(gè)圖片可以看到他們兩個(gè)的最直觀區(qū)別

總結(jié):dao層和service層最大的區(qū)別就是作用功能的不同,但是他們之間也是相互協(xié)作而存在的,誰都不能少誰。

以上是答主的看法,希望大家能給個(gè)贊,如果有其他看法的可以在下方評論區(qū)留言,我會在第一時(shí)間回復(fù),或者點(diǎn)個(gè)關(guān)注我們一起探討探討