bladex-boot开启多数据源集成TDengine,连接显示空指针。

Blade 未结 2 638
daisygeo
daisygeo 2023-10-11 16:16

一、该问题的重现步骤是什么?


1. application.yml文件未做修改;


2. application-dev.yml文件修改如下;

截图_20231011160024.png


3. 已经开启多数据源选项;

2.png


4. 临时修改application-dev.yml文件中的默认数据源,设置primary为tdengine;


5. 启动程序验证,结果报错;

3.png


二、你期待的结果是什么?实际看到的又是什么?


期待开启多数据源集成tdengine后,能正常连接tdengine。


三、你正在使用的是什么产品,什么版本?在什么操作系统上?


商用版 BladeX-Boot 3.1.1.RELEASE,本地开发台式机,win10。


四、请提供详细的错误堆栈信息,这很重要。


3.png


五、若有更多详细信息,请在下面提供。

2条回答
  •  admin
    admin (楼主)
    2023-10-12 14:24

    这个不太确定是否是dynamic-datasource这个组件原生支持。

    你这样试试看,先不要在bladex操作,你另开一个原生的工程,集成mybatis-plus+dynamic-datasource的依赖,然后配置TDengine,看看是否能加载成功。

    如果可以的话麻烦把没问题的demo发给我们,我们来调试排查原因,邮箱:bladejava@qq.com

    如果原生的也不行,则需要给作者发issue了, 组件地址:https://baomidou.com/pages/a61e1b/

    作者追问:2023-10-12 14:24

    按照您说的,已经另开一个原生的工程,集成了mybatis-plus+dynamic-datasource的依赖,然后配置TDengine,可以加载成功。Demo项目已经发送至指定邮箱,望尽快给予回复,感激不尽!

    回答: 2023-10-12 14:24

    邮件已回复,等待反馈排查。

    我们在bladex-boot工程加了配置,启动没有问题,bladex-boot、tdengine与jdbc均使用的最新版本,具体看下图。

    image.png


    配置如下

    #数据源配置
    spring:
     #排除DruidDataSourceAutoConfigure
     autoconfigure:
       exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure
     datasource:
       dynamic:
         druid:
           #通用校验配置
           validation-query: select 1
           #启用sql日志拦截器
           proxy-filters:
             - sqlLogInterceptor
         #设置默认的数据源或者数据源组,默认值即为master
         primary: tdengine
         datasource:
           master:
             druid:
               #独立校验配置
               validation-query: select 1
               #oracle校验
               #validation-query: select 1 from dual
             url: jdbc:mysql://localhost:3306/bladex_boot?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true
             username: root
             password: root
           tdengine:
             druid:
               #独立校验配置
               validation-query: select 1
               #oracle校验
               #validation-query: select 1 from dual
             url: jdbc:TAOS-RS://localhost:6041/test?charset=UTF-8&locale=en_US.UTF-8&timezone=UTC-8
             username: root
             password: taosdata
             driver-class-name: com.taosdata.jdbc.rs.RestfulDriver


提交回复