当前使用版本(必填,否则不予处理)

3.5.3.2 MyBatis-Plus 查询返回MAP时,能否动态判断是否开启下划线转驼峰?

该问题是如何引起的?(确定最新版也有问题再提!!!)

查询返回MAP时,项目引用的基础框架未开启原生SQL查询返回map时的下划线转驼峰开关,但是我们的项目开启了下划线转驼峰开关,这样导致基础框架查询返回MAP也进行了字段转换,导致页面字段对应不上,想根据配置来动态判断是否进行转换,初步想法是:能否根据ResultMap中的id来判断哪个查询来进行转换,但是在MybatisMapWrapper中获取不到ResultMap的值。

配置
      /* 下划线转驼峰*/
      mybatisConfiguration.setMapUnderscoreToCamelCase(true);
      /* map 下划线转驼峰 */
      mybatisConfiguration.setObjectWrapperFactory(new MybatisMapWrapperFactory());
      //map 映射value为null的情况
      mybatisConfiguration.setCallSettersOnNulls(true);
转换类
public class MybatisMapWrapper extends MapWrapper {

    public MybatisMapWrapper(MetaObject metaObject, Map<String, Object> map) {
        super(metaObject, map);
    }

    @Override
    public String findProperty(String name, boolean useCamelCaseMapping) {
        //想在这个方法根据一些条件来判断哪些查询进行转换是否可行,或者有更好的方法?
        if (useCamelCaseMapping && !StringUtils.isCamel(name)) {
            return StringUtils.underlineToCamel(name);
        }
        return name;
    }
}

MyBatis-Plus 查询返回MAP时,能否动态判断是否开启下划线转驼峰?

重现步骤(如果有就写完整)

报错信息

Comment From: nieqiurong

没得,如果两个工程的包名不同,可以直接配置多sqlsessionfactorybean扫描不同步的包处理