SpringBoot整合mybatis——配置mybatis駝峰命名規則自動轉換


一、簡述

  mybatis駝峰式命名規則自動轉換:

  • 使用前提:數據庫表設計按照規范“字段名中各單詞使用下划線"_"划分”;
  • 使用好處:省去mapper.xml文件中繁瑣編寫表字段列表與表實體類屬性的映射關系,即resultMap。

示例:

    <resultMap id ="UserInfoMap" type="com.example.mybaitsxml.dao.entity.User">
        <result column="name_" property="name"/>
        <result column="sex" property="sex"/>
        <result column="age" property="age"/>
        <result column="class_no" property="classNo"/>
    </resultMap>

SpringBoot整合mybatis,開啟mybatis駝峰式命名規則自動轉換,通常根據配置文件不同分為兩種方式。

 

1、方式一

  直接application.yml文件中配置開啟

#mybatis配置
mybatis:
  typeAliasesPackage: com.example.mybaitsxml.dao.entity
  mapperLocations: classpath:mapper/*.xml
  configuration: map-underscore-to-camel-case: true

 

2、方式二

  mybatis-config.xml文件中配置開啟,application.yml文件指定配置文件。

  • application.yml文件:

#mybatis配置
mybatis:
  typeAliasesPackage: com.example.mybaitsxml.dao.entity
  mapperLocations: classpath:mapper/*.xml
  configLocation: classpath:/mybatis-config.xml
  • mybatis-config.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">

<configuration>
    <!--開啟駝峰命名規則自動轉換-->
    <settings>
    <setting name="mapUnderscoreToCamelCase" value="true" />
    </settings>
</configuration>

注:關於xml文件,如果刪除或者注釋掉所有內容,會報錯:"Valid XML document must hava a root tag",若忽略這個報錯直接運行,程序報錯:

“Error creating document instance. Cause: org.xml.sax.SAXParseException; lineNumber: 11; columnNumber: 24; 文件提前結束。”

 

3、小結

  開啟mybatis駝峰式命名規則轉換可以省去xml文件中resultMap編寫的麻煩,只需要為resultType指定數據庫表對應的實體類即可,但是考慮程序的安全性以及映射靈活性,通常開發中還是將resultMap結合使用。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM