mybatis-plus返回map自动转驼峰配置object-wrapper-factory不生效问题解决;配置map-underscore-to-camel-case: true不生效问题解决
很多时候我们工作中查询很多字段的时候一般是返回一个VO来接收,这个时候我们只要在yml中配置了
map-underscore-to-camel-case: true
就会自动将查询数据库的字段带下划线的属性转成对应实体类VO中驼峰命名的属性。
但是会经常有这种场景:例如我们只查询2个字段要返回给前端,这时候我们还需要新建一个VO,很是麻烦,我们只需要查询返回一个Map来接收就可以了 ,但是返回到控制台的属性结果却不是驼峰命名。
如下图 ,这就是为何你yml中配置了map-underscore-to-camel-case: true也不生效的原因。(对返回map不生效
怎么解决这个问题呢?解决方案:
mybatis-plus其实已经帮我们写好了MybatisMapWrapperFactory类(开启返回map结果集的下划线转驼峰)
在mybatis-plus-extension.jar下有一个类
com.baomidou.mybatisplus.extension.MybatisMapWrapperFactory
和
com.baomidou.mybatisplus.extension.handlers.MybatisMapWrapper
mybatis-plus自带map下划线转驼峰配置类
重点:
我们只需要在yml中配置一下object-wrapper-factory指定MybatisMapWrapperFactory就可以了
mybatis-plus: mapper-locations: class