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

mybatis 解決從列名到屬性名的自動(dòng)映射失敗問(wèn)題

 更新時(shí)間:2021年06月30日 14:49:47   作者:franklin_lei  
這篇文章主要介紹了mybatis 解決從列名到屬性名的自動(dòng)映射失敗問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

問(wèn)題背景

從數(shù)據(jù)庫(kù)中取出數(shù)據(jù)映射到實(shí)體類時(shí),實(shí)體類中只有部分屬性映射成功,其余屬性值皆為null。

問(wèn)題描述

如下圖AreaDao.xml文件中描述了queryArea()方法從數(shù)據(jù)庫(kù)獲取Area對(duì)象的各個(gè)屬性值的查詢過(guò)程,最后執(zhí)行查詢結(jié)果顯示只有屬性priority被成功地賦值

AreaDao.xml

<select id="queryArea" resultType="com.imooc.wechatpro.model.Area">
        SELECT area_id, area_name, priority, create_time, last_edit_time
        FROM tb_area
        ORDER BY priority
        DESC
</select>
AreaDaoTest.java
Area area = areaDao.queryAreaById(3);
area = {Area@7489} 
 areaId = null
 areaName = null
 priority = {Integer@7513} 312
 createTime = null
 lastEditTime = null

數(shù)據(jù)庫(kù)中對(duì)應(yīng)的表tb_area:

mysql> select * from tb_area;
+---------+-----------+----------+-------------+----------------+
| area_id | area_name | priority | create_time | last_edit_time |
+---------+-----------+----------+-------------+----------------+
|       1 | 南苑      |      302 | NULL        | NULL           |
|       2 | 北苑      |      307 | NULL        | NULL           |
|       3 | 東苑      |      312 | NULL        | NULL           |
+---------+-----------+----------+-------------+----------------+

原因

實(shí)體類Area中的屬性使用的是駝峰命名規(guī)則,默認(rèn)情況下無(wú)法與數(shù)據(jù)庫(kù)表的列名相匹配

Area.java
public class Area {
    private Integer areaId;
    private String areaName;
    private Integer priority;
    private Date createTime;
    private Date lastEditTime;
    ······
}

解決辦法

在mybatis的配置文件mybatis-config.xml中將mapUnderscoreToCamelCase設(shè)為true,關(guān)于配置文件mybatis-config.xml的各種屬性配置可以參考官方文檔

<configuration>
    <settings>
        <setting name="mapUnderscoreToCamelCase" value="true" />
    </settings>
</configuration>

當(dāng)然這還沒(méi)完,為了讓文件mybatis-config.xml生效,需要將該文件的路徑添加到全局配置文件application.properties(or application.yml)的配置中,如

application.properties
mybatis.config-location=classpath:mybatis-config.xml

在這里,我的mybatis-config.xml文件在resources目錄下,因此使用路徑classpath:mybatis-config.xml

mybatis 無(wú)法找到映射錯(cuò)誤

mybatis 中報(bào)錯(cuò):

Result Maps collection does not contain value for com.common.pojo.User

其中是因?yàn)樵趍apper.xml文件中的resultMap ,沒(méi)有設(shè)置正確,沒(méi)有將sql的列名與pojo類的屬性名保持一致

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

相關(guān)文章

  • Mybatis?List列表In查詢實(shí)現(xiàn)的注意事項(xiàng)說(shuō)明

    Mybatis?List列表In查詢實(shí)現(xiàn)的注意事項(xiàng)說(shuō)明

    這篇文章主要介紹了Mybatis?List列表In查詢實(shí)現(xiàn)的注意事項(xiàng)說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Mybatis一對(duì)多關(guān)聯(lián)關(guān)系映射實(shí)現(xiàn)過(guò)程解析

    Mybatis一對(duì)多關(guān)聯(lián)關(guān)系映射實(shí)現(xiàn)過(guò)程解析

    這篇文章主要介紹了Mybatis一對(duì)多關(guān)聯(lián)關(guān)系映射實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • Java--裝箱和拆箱詳解

    Java--裝箱和拆箱詳解

    本篇文章主要介紹了詳解Java 自動(dòng)裝箱與拆箱的實(shí)現(xiàn)原理,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2021-07-07
  • Java中判斷對(duì)象是否相等的equals()方法使用教程

    Java中判斷對(duì)象是否相等的equals()方法使用教程

    與==運(yùn)算符響應(yīng),equals()方法也是Java中對(duì)對(duì)象進(jìn)行比較的一大方式,要特別注意二者的不同點(diǎn),這個(gè)我們?cè)谙挛闹屑磳⒅v到,接下來(lái)我們就來(lái)看一下Java中判斷對(duì)象是否相等的equals()方法使用教程
    2016-05-05
  • 在SpringBoot中如何利用Redis實(shí)現(xiàn)互斥鎖

    在SpringBoot中如何利用Redis實(shí)現(xiàn)互斥鎖

    當(dāng)我們利用Redis存儲(chǔ)熱點(diǎn)數(shù)據(jù)時(shí),突然就過(guò)期失效或者被刪除了,導(dǎo)致大量請(qǐng)求同時(shí)訪問(wèn)數(shù)據(jù)庫(kù),增加了數(shù)據(jù)庫(kù)的負(fù)載,為減輕數(shù)據(jù)庫(kù)的負(fù)載我們利用互斥鎖,本文重點(diǎn)介紹在SpringBoot中如何利用Redis實(shí)現(xiàn)互斥鎖,感興趣的朋友一起看看吧
    2023-09-09
  • 基于Java字符串 "==" 與 "equals" 的深入理解

    基于Java字符串 "==" 與 "equals" 的深入理解

    本篇文章是對(duì)Java中的字符串"=="與"equals"進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • java網(wǎng)上圖書(shū)商城(8)訂單模塊3

    java網(wǎng)上圖書(shū)商城(8)訂單模塊3

    這篇文章主要為大家詳細(xì)介紹了java網(wǎng)上圖書(shū)商城,訂單模塊第三篇,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • Java中常見(jiàn)的文件拷貝方式小結(jié)

    Java中常見(jiàn)的文件拷貝方式小結(jié)

    這篇文章主要為大家詳細(xì)介紹了JAVA?四種拷貝文件的方式,分析一下他們對(duì)內(nèi)存使用的方式和各自應(yīng)用的場(chǎng)景,其實(shí)也是對(duì)之前學(xué)過(guò)的知識(shí)做一個(gè)回顧吧,快跟隨小編一起學(xué)習(xí)起來(lái)吧
    2024-03-03
  • mybatis?plus?MetaObjectHandler?不生效的解決

    mybatis?plus?MetaObjectHandler?不生效的解決

    今天使用mybatis-plus自動(dòng)為更新和插入操作插入更新時(shí)間和插入時(shí)間,配置了MetaObjectHandler不生效,本文就來(lái)解決一下,具有一定的 參考價(jià)值,感興趣的可以了解一下
    2023-10-10
  • idea 如何查找類中的某個(gè)方法

    idea 如何查找類中的某個(gè)方法

    這篇文章主要介紹了idea 如何查找類中的某個(gè)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-02-02

最新評(píng)論

苗栗县| 栾城县| 定西市| 平定县| 宁晋县| 浦江县| 鹤峰县| 阜新市| 昂仁县| 太仓市| 承德县| 石景山区| 聂荣县| 怀柔区| 兴隆县| 湘潭县| 慈利县| 绥中县| 福泉市| 汪清县| 鲜城| 长垣县| 保定市| 宁乡县| 朝阳市| 淮滨县| 新郑市| 朝阳县| 葫芦岛市| 金沙县| 汝南县| 蓝山县| 大理市| 海林市| 西林县| 钟山县| 田东县| 舟山市| 吉林市| 凉城县| 绍兴市|