mybatis设置驼峰映射后失效问题(多数据源)

9 篇文章 0 订阅
7 篇文章 0 订阅

前言

按照通用策略yml配置驼峰失效 😦

mybatis:
  configuration:
    # 启动结果集自动映射  NONE 表示取消自动映射;PARTIAL 只会自动映射没有定义嵌套结果集映射的结果集。 FULL 会自动映射任意复杂的结果集(无论是否嵌套)。默认是partial,这是一种全局设置
    auto-mapping-behavior: partial
    # 开启驼峰映射
    mapUnderscoreToCamelCase: true

注:此配置只适用与单数据源,如果单数据源驼峰失效,大多数配置问题,这方面找答案
数据库:user_name ==> 驼峰 userName

问题

因为我是多数据源链接,使用了自定义的配置数据源工具类,和原有单数据源内部扫描逻辑不同。也就是我虽然配置了全局驼峰,但是单个数据源并不会加载配置

尝试

网上找到了第一种解决方式,手动注入mybatis.configuration 很遗憾 尝试无效

        @Bean
        @ConfigurationProperties(prefix = "mybatis.configuration")
        public org.apache.ibatis.session.Configuration mybatisConfig(){
            return  new org.apache.ibatis.session.Configuration();
        }

解决

经过再次查找反复修改最终确定另一种注入方式 此方式可以解决多数据源驼峰失效问题
可以看着篇文章:Java链接多数据源

        @Bean(name = "sqlSessionFactory1")
        @Primary
        public SqlSessionFactory sqlSessionFactory1() throws Exception {
            SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
            sqlSessionFactoryBean.setDataSource(ds1);
            //开启驼峰
            org.apache.ibatis.session.Configuration configuration = new org.apache.ibatis.session.Configuration();
            configuration.setMapUnderscoreToCamelCase(true);
            sqlSessionFactoryBean.setConfiguration(configuration);
            return sqlSessionFactoryBean.getObject();
        }

参考文章:springboot多数据源如何配置驼峰映射或配置文件不起作用的问题

  • 7
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值