SpringBoot中mybatis自动和注解返回类型HASHMAP转换驼峰标识方法

前言:mybatis默认是属性名和数据库字段名一一对应的,即
数据库表列:user_name
实体类属性:user_name
但是java中一般使用驼峰命名
数据库表列:user_name
实体类属性:userName
很多时候我们需要返回多表连接的值,没必要为了几个值新建一个实体类,一般用HashMap来做返回类型,而HashMap不自动返回驼峰标识怎么办?
————————————————
方法一:添加yml配置
在Springboot中,可以通过设置map-underscore-to-camel-case属性为true来开启驼峰功能。
application.yml中:


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

application.properties中:

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

注意如果返回类型是HashMap会使驼峰标识失效

方法二:运用Result功能
在mapper.xml中查询语句添加resultMap,resultMap的property对应实体类的set方法,colomn对应数据库字段。


        
        
        
        
        
    


    
    

以及

    @Result(property = "aBC", column = "a_b_c")
@Select("select * from count where id =#{id}")
Count selectById(Integer id);

如果对应多个字段

@Results(
         @Result(property = "aBC", column = "a_b_c"),
           @Result(property = "aXX", column = "a_x_x")
 )

用注解来让HashMap转驼峰
如果是注解sql语句

@Result(property = "aBC", column = "a_b_c")@Select("select * from count where id =#{id}")HashMap selectById(Integer id);

如果是mapper.xml

   
        
    
    
    
    
    ```

你可能感兴趣的:(mybatis,spring,boot,oracle)