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

springboot 2.1.4release集成mybatis plus2.3 连接mysql项目成功,集成hive连接时 因为另外配置了datasource,导致mybatis plus默认读取了hive datasource并连接 从而报错

该问题是怎么引起的?(最新版上已修复的会直接close掉)

说明:springboot 2.1.4release集成mybatis plus2.3本身运行良好, springboot 2.1.4release集成hive运行良好, 当两个集成到一个项目中时,mybatis plus默认加载了hive配置的datasource,从而报错

重现步骤

暂时官网未见可以避免不读hive datasource的配置 请提供解决方法 thx

报错信息

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/spring/boot/starter/MybatisPlusAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.ibatis.session.SqlSessionFactory]: Factory method 'sqlSessionFactory' threw exception; nested exception is com.baomidou.mybatisplus.exceptions.MybatisPlusException: Error: GlobalConfigUtils setMetaData Fail ! Cause:java.sql.SQLException: Could not open client transport with JDBC Uri: jdbc:hive2://10.0.68.233:10000/dm: null

Comment From: miemieYaho

那就自己给定数据库类型

Comment From: Zerppen

@miemieYaho 请问这个类型设定后有用吗? 现在默认会去加载Datasource 构造方法,这里就自动连hive了

Comment From: Zerppen

mybatis-plus: mapper-locations: classpath*:/mapperxml/*.xml # 实体扫描,多个package用逗号或者分号分隔 typeAliasesPackage: com.yh.api.entity global-config: # 数据库相关配置 db-config: db-type: MYSQL # 主键类型 AUTO:"数据库ID自增", INPUT:"用户输入ID", ID_WORKER:"全局唯一ID (数字类型唯一ID)", UUID:"全局唯一ID UUID"; id-type: AUTO # 字段策略 IGNORED:"忽略判断",NOT_NULL:"非 NULL 判断"),NOT_EMPTY:"非空判断" field-strategy: NOT_NULL # 驼峰下划线转换 column-underline: true # 刷新mapper 调试神器 refresh-mapper: true # 数据库大写下划线转换 #capital-mode: true # 逻辑删除配置 logic-delete-value: -1 logic-not-delete-value: 0 设置后还是一样

Comment From: miemieYaho

后续会移除

Comment From: Stanford2299

有好的解决办法 么,现在我是用druid连接池,但是就会出现这样的问题.......如果有好的办法还请共享

Comment From: Stanford2299

给你找到了,你试一下可以取消https://blog.csdn.net/qq_21187515/article/details/90237885