最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解決Mybatis中mapper的ID沖突問題

 更新時間:2021年06月11日 15:24:26   作者:瑰  
這篇文章主要介紹了解決Mybatis中mapper的ID沖突問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

mapper 的id沖突原因:

原因一:

在同一個mapper.xml中存在相同的ID

原因二:

同時使用了xml配置和注解配置

解決方案:

只保留xml或者注解即可!!!

Mybatis mapper文件下同一id 查詢結(jié)果列不同問題

場景描述:

訂單數(shù)據(jù)按天分表,正常情況下每一天的表結(jié)構(gòu)都是一樣的,表名命名格式order_yyyyMMdd。

定義一個查詢?nèi)缦拢?/p>

<select id="orderSelect" parameterClass="java.util.HashMap" resultClass="com.xxx">
    select * from order_$table_suffix$
    where ...
</select>

如果我查詢18年10月1日數(shù)據(jù),則傳參數(shù)table_suffix=20181001,如果我查詢18年10月2日數(shù)據(jù),則傳參數(shù)table_suffix=20181002.即可。

系統(tǒng)運行了若干天,到了18年12月30日,order表添加了新的字段a。以后的訂單表都會添加該字段。對應的實體類也添加了對應字段。應該沒有問題了,更新并重啟程序。先查詢今天的數(shù)據(jù),沒有問題。在查詢之前的數(shù)據(jù),發(fā)現(xiàn)程序報錯了,找不到字段a.

解決方法:

修改id 為orderSelect 的查詢

<select id="orderSelect" remapResults="true" parameterClass="java.util.HashMap" resultClass="com.xxx">
    select * from order_$table_suffix$
    where ...
</select>

對比發(fā)現(xiàn)添加了 remapResults="true"的配置

總結(jié) :

mybatis 默認remapResults屬性為false,會導致同一查詢id 查出來的字段一直都是固定的。設置為true的話,則每次查詢查出來的列可以不相同,這樣才能應對不同的表結(jié)構(gòu)。

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

岫岩| 楚雄市| 无极县| 大英县| 棋牌| 湖南省| 安岳县| 乐都县| 凌云县| 自治县| 潜江市| 青冈县| 龙岩市| 吉木乃县| 黎城县| 隆昌县| 汽车| 巴南区| 明星| 望都县| 保靖县| 维西| 界首市| 鄢陵县| 丰台区| 汉沽区| 吉安市| 内江市| 固原市| 鲁甸县| 孟村| 丹巴县| 石门县| 保德县| 泊头市| 洛川县| 深圳市| 桑植县| 贡山| 仪陇县| 扬州市|