關(guān)于mybatiscallSettersOnNulls配置解析

今天做了一件坑了自己的事情,為此浪費了好多時間。。。

創(chuàng)新互聯(lián)是一家專注于成都做網(wǎng)站、網(wǎng)站制作與策劃設(shè)計,鞏義網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十余年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:鞏義等地區(qū)。鞏義做網(wǎng)站價格咨詢:028-86922220

在mybatis的設(shè)置中,看到了這樣的一行設(shè)置。出于程序員的好奇,去搜索了一下,這條設(shè)置是干什么的?!?/p>

<setting name="callSettersOnNulls" value="true"/>

在網(wǎng)上眾多大神的解答下,終于一知半解了。

在一般查詢中,如果用map接受查詢結(jié)果時,會自動將查詢結(jié)果為null的字段忽略,這樣就造成取參數(shù)時報空指針異常的情況。

如果設(shè)置了這條屬性之后,mybatis就不會忽略這些字段,你依然能get到這些key,只不過value為null,這樣也方便。

那么坑來了,這種設(shè)置的情況下,會出現(xiàn)2種比較特殊的情況。

1.如果整個查詢的所有字段都沒有值,就是查詢到0條記錄時,那么接受到的map是什么結(jié)果?

答案是,我們會接收到一個所有key值都為null 的map 而不是一個為null的map。

2.如果只查詢一個字段,而用map接收,此時為null是什么結(jié)果?

答案是,我們會接收到一個為null的map,跟上面情況正好相反。

總結(jié)

以上所述是小編給大家介紹的關(guān)于mybatis callSettersOnNulls 配置解析,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復(fù)大家的!

分享名稱:關(guān)于mybatiscallSettersOnNulls配置解析
鏈接地址:http://www.muchs.cn/article40/ghgeho.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、軟件開發(fā)、企業(yè)網(wǎng)站制作、網(wǎng)站營銷App開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作