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

1、簡述

  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駝峯式命名規則自動轉換,一般根據配置文件不一樣分爲兩種方式。mybatis

 

一、方式一

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

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

 

二、方式二

  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",若忽略這個報錯直接運行,程序報錯:app

「Error creating document instance. Cause: org.xml.sax.SAXParseException; lineNumber: 11; columnNumber: 24; 文件提早結束。」spa

 

三、小結

  開啓mybatis駝峯式命名規則轉換能夠省去xml文件中resultMap編寫的麻煩,只須要爲resultType指定數據庫表對應的實體類便可,可是考慮程序的安全性以及映射靈活性,一般開發中仍是將resultMap結合使用。設計

相關文章
相關標籤/搜索