MyBatis配置文件开启驼峰命名映射

今天看SpringBoot整合Mybatis时看到了,遇到了一个遗忘的点,mybatis属性使用驼峰命名,我居然给忘了怎么配置来着。修改mybatis配置文件,配置驼峰命名。

所以整理一下这些遗忘的点和用到的配置。

mybatis支持属性使用驼峰的命名,用

属性是这样的

mapUnderscoreToCamelCase:true/false 
 <!--是否启用下划线与驼峰式命名规则的映射(如first_name => firstName)-->

我们一般在数据库中字段名使用 '_'连接,而在实体类中使用驼峰命名。但是这样查询之后使用的驼峰命名法的是映射不到实体类上的 。

要解决这个问题只需要在mybatis配置文件中添加以下配置

配置是这样的

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

在setting中设置mapUnderscoreToCamelCasetrue,就可以实现驼峰转换了, 这个的默认是false

在SpringBoot 项目中没有mybatis.xml文件,可以在application.properties中,加入下面的配置项:

mybatis.configuration.mapUnderscoreToCamelCase=true
或
mybatis.configuration.map-underscore-to-camel-case=true

设为true表示开启驼峰转换。两种方式实验证明都可以使用。但如果同时配置的话,前者mybatis.configuration.mapUnderscoreToCamelCase的优先级更高。

SpringBoot中还可以使用自定义配置类的方式配置;给容器中添加一个ConfigurationCustomizer;

@Configuration
public class MyBatisConfig {

    @Bean
    public ConfigurationCustomizer configurationCustomizer() {
        return new ConfigurationCustomizer() {

            @Override
            public void customize(org.apache.ibatis.session.Configuration configuration) {
                configuration.setMapUnderscoreToCamelCase(true);
            }
        };
    }
}

参考:https://blog.csdn/fangwenzheng88/article/details/78469976

更多推荐

MyBatis配置文件开启驼峰命名映射