這篇文章給大家分享的是有關(guān)MyBatis如何插入數(shù)據(jù)返回主鍵的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。
成都創(chuàng)新互聯(lián)公司始終堅(jiān)持【策劃先行,效果至上】的經(jīng)營(yíng)理念,通過多達(dá)10余年累計(jì)超上千家客戶的網(wǎng)站建設(shè)總結(jié)了一套系統(tǒng)有效的推廣解決方案,現(xiàn)已廣泛運(yùn)用于各行各業(yè)的客戶,其中包括:集裝箱等企業(yè),備受客戶贊許。
Service層:
public int addUser(UserDomian user){ int i = userMapper.insert(user); }
xml:
<insert id="insert" parameterType="....UserDomain"> insert into t_user(user_name,password) values (#{userName},#{password}) </insert>
這樣userMapper的insert方法成功插入之后返回值為影響行數(shù),也就是1。而且插入之后userDomain實(shí)體類的userId為null。
我們都知道在MyBatis中,xml的insert語句中將useGeneratedKeys指定為true,那么返回之后就會(huì)得到新增的主鍵值,具體寫法如下:
<insert id="insert" parameterType="....UserDomain" useGeneratedKeys="true" keyProperty="userId"> insert into t_user(user_name,password)values(#{userName},#{password}) </insert>
前提條件是對(duì)應(yīng)的MySQL表中id必須是自增的,并且對(duì)應(yīng)的UserDomain實(shí)體類中有g(shù)et、set方法,而且只適用于與mySql數(shù)據(jù)庫,Oracle數(shù)據(jù)庫不支持。
但是這樣設(shè)置之后,在service層打斷點(diǎn),插入成功之后UserDomain確實(shí)和之前不一樣,他的userId不再是null了,而是具體的主鍵id值,但是usetMapper的insert方法的返回值依然是1,也就是插入的影響行數(shù)。
也就是說,這樣設(shè)置,mapper接口返回值依然是成功插入的記錄數(shù),但不同的是主鍵值已經(jīng)賦值到領(lǐng)域模型實(shí)體的id中了。
感謝各位的閱讀!關(guān)于“MyBatis如何插入數(shù)據(jù)返回主鍵”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!
新聞名稱:MyBatis如何插入數(shù)據(jù)返回主鍵
網(wǎng)站路徑:http://www.chinadenli.net/article30/piihso.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、建站公司、用戶體驗(yàn)、云服務(wù)器、網(wǎng)站收錄、手機(jī)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)