最新国产好看的视频,伊人天堂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)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

最新評論

长白| 永胜县| 大同市| 台东县| 合阳县| 青冈县| 临清市| 疏附县| 台安县| 六枝特区| 治县。| 平乡县| 托里县| 贵州省| 金秀| 舟山市| 遵义市| 济源市| 周宁县| 湘阴县| 米易县| 塔城市| 河东区| 西华县| 邢台县| 绥江县| 湖南省| 驻马店市| 新化县| 清丰县| 祁阳县| 嵊州市| 冀州市| 维西| 华池县| 萨嘎县| 望谟县| 乌兰浩特市| 海宁市| 松滋市| 沾益县|