在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Java/ 使用 mybatis 到底要不要寫一對多、一對一關(guān)聯(lián)

使用 mybatis 到底要不要寫一對多、一對一關(guān)聯(lián)

方法一

Dao 層有一對多、一對一關(guān)聯(lián)
Service 層寫業(yè)務(wù)邏輯
方法二

Dao 層不寫一對多、一對一關(guān)聯(lián),只提供基本的增刪查改
Service 層完成關(guān)聯(lián)查詢等以及寫業(yè)務(wù)邏輯

方法一在效率上貌似有優(yōu)勢,但寫 resultMap 和語句真是不開心
方法二對程序員比較友好,但效率不如方法一,而且 service 層會比較臃腫

不知道大家的項目中都是如何使用的

個人比較喜歡使用第二種.因為目前所做的項目數(shù)據(jù)庫表經(jīng)常需要改動,加字段,而且我本人也是用mybatis generatro自動生成的,可能會覆蓋掉。有沒有什么好的建議?

回答
編輯回答
愿如初
  1. LZ的問題,我也思考過,可能是LZ沒遇到過更復(fù)雜的業(yè)務(wù)邏輯,查詢7,8張表的關(guān)聯(lián)數(shù)據(jù),這樣的話,效率就太低了,

  2. 還有一種情況是,方法二的的處理明顯的弊端是還要需要自己填充POJO數(shù)據(jù),假如POJO的數(shù)據(jù)結(jié)構(gòu)比較復(fù)雜,以后你維護(hù)起來自己都蒙蔽,resultMap 多做幾遍就好了,結(jié)構(gòu)很清晰,功能很強(qiáng)大,維護(hù)起來也方便。

無論是維護(hù),還是查詢效率,都是需要考慮的,程序員應(yīng)該辛苦自己,讓自己的程序變的更好

2018年6月21日 15:43