dao層和service層中對應操作

2021-09-01 15:45:43 字數 2147 閱讀 1381

進行**檢查的時候,被同事發現了乙個問題,dao層中不管是update,insert,delete還是select操作,統一用的是,但是我在使用的時候結果並沒有錯誤,但為了規範,在此做一下總結,貼出**留個教訓。

1、select操作

service層中:selectone—>查詢一條記錄;select—>查詢多條記錄;返回值—>hashmap

mapselmap=commdao.selectone(kfsgl + "kfsgl_s", paramsmap);		

mapselmap=commdao.select(kfsgl + "kfsxx_q", paramsmap);

dao層中:

select id,kfsmc,kfsdm,lxrxm,lxdh,lxrsm,yxdz,txdz,kfsms	

from fw_sypt_kfsjlb

where id=#

select id kfsid, kfsmc as kfs_xz

from fw_sypt_kfsjlb

where 1=1 and yxbz = '1'

2、update操作service層中:update—>更新;返回值—>int

if(id!=null&&id!="")
dao層中:可以不寫resulttype,細節方面要注意

update fw_sypt_kfsjlb

kfsmc =#,

kfsdm =#,

lxrxm =#,

lxdh =#,

lxrsm =#,

yxdz =#,

txdz =#,

kfsms =#,

cjr =#,

cjsj =sysdate

id = #

3、insert操作service層中:insert—>插入;返回值—>int

temp=commdao.insert(kfsgl + "kfsgl_i", paramsmap);
dao層中:可以不寫resulttype,細節方面要注意

insert into fw_sypt_kfsjlb(id,kfsmc,kfsdm,lxrxm,lxdh,lxrsm,yxdz,txdz,kfsms,yxbz,cjsj,cjr)

values(seq_sypt_kfsjlb_id.nextval,#,#,#,#,#,#,#,,'1',sysdate,#)

4、delete操作由於資料很重要,作用非常大,因此在實際開發中,基本上是不存在物理上的刪除資料的,只是邏輯上的刪除資料,僅僅只是讓使用者覺得自己刪除了資料,實際開發中的delete一般用update操作來代替。這裡為了總結,還是寫一寫delete操作。

service層中:delete—>刪除;返回值—>int

temp=commdao.delete(kfsgl + "kfsgl_d", paramsmap);
dao層中:可以不寫resulttype,細節方面要注意

delete from fw_sypt_kfsjlb  where id='#'

5、總結service層中統一呼叫了select(),用於進行update,insert,delete還是select操作(dao層配置sql語句還是沒有改變,還是用了update,insert等等關鍵字),結果並沒有錯誤,原因可能是因為service中查詢mybatis中的配置資訊時,僅僅還是根據id找到相應的sql語句進行執行,並沒有匹配service中的函式呼叫是否和mybatis中配置的一樣。但是這類問題要規避,因為現在沒有問題不代表之後沒有問題,缺陷都是隱藏在沒有被發現,還是要注重規範。

java中dao層和service層的區別是什麼?

首先解釋面上意思,service是業務層,dao是資料訪問層。呵呵,這個問題我曾經也有過,記得以前剛學程式設計的時候,都是在service裡直接呼叫dao,service裡面就new乙個dao類物件,呼叫,其他有意義的事沒做,也不明白有這個有什麼用,參加工作久了以後就會知道,業務才是工作中的重中之重...

dao層 service層 事務的理解

dao層 對應資料最底層操作,一般來說,乙個資料庫table對應乙個dao,單錶操作。service層 把客戶多方面要求進行彙總,對外只有引數即可,至於服務層操作多少個dao與客戶無關。事務四大特性 1.原子性 原子性是指事務是乙個不可分割的工作單位,事務中的操作要麼都發生,要麼都不發生。2.一致性...

DAO層和Service層的究極理解

先看後贊,養成習慣。點讚收藏,人生輝煌。說實話,學了挺久的mvc架構了,到現在也一直沒整明白service層和dao層是幹什麼用的,哪怕我目前已經學到了spring boot,但回過頭來看這些基礎知識,依然是不明就裡。感覺service層並沒有做什麼實際的工作,只是接受了servlet,同時又呼叫了...