相关推荐recommended
总结springboot开启mybatis驼峰命名自动映射的三种方式
作者:mmseoamin日期:2024-04-27

总结springboot开启mybatis驼峰命名自动映射的三种方式

  • 方式一:通过springboot的配置文件application.yml
  • 方式二:通过mybatis的配置文件
  • 方式三:通过@Comfiguration注解和@Bean注解,向容器中添加ConfigurationCustomizer类型的组件,在ConfigurationCustomizer中进行设置(没试过)

    方式一:通过springboot的配置文件application.yml

    mybatis:
      configuration:
        map-underscore-to-camel-case: true
    

    此方式是最简单的,但是要注意,通过springboot的配置文件配置mybatis的设置,则不能够再使用mybatis的配置文件,

    例如:下边代码中的classpath:mybatis/mybatis-config.xml和map-underscore-to-camel-case: true两个设置不能同时存在,

    要么使用config-location指定mybatis的配置文件,在通过mybatis的配置文件配置相关设置,

    要么通过springboot配置文件的mybatis.configuration进行相关设置,二者只能选其一,否则会报错。

    mybatis:
      config-location: classpath:mybatis/mybatis-config.xml
      mapper-locations: classpath:mybatis/mapper/*.xml
      configuration:
        map-underscore-to-camel-case: true
    

    方式二:通过mybatis的配置文件

    首先需要在springboot的配置文件application.yml中指定mybatis配置文件的位置。

    mybatis:
      config-location: classpath:mybatis/mybatis-config.xml
      mapper-locations: classpath:mybatis/mapper/*.xml
    

    然后在mybatis配置文件中进行设置

    
     
     
       
           
        
    
    

    方式三:通过@Comfiguration注解和@Bean注解,向容器中添加ConfigurationCustomizer类型的组件,在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);
                }
            };
        }
    }
    

    链接: 总结springboot开启mybatis驼峰命名自动映射的三种方式