java吧 关注:1,211,788贴子:12,653,444
  • 38回复贴,共1

多数据库方案

只看楼主收藏回复

不是master,slave那种,网上找了很多方案几乎都是 spring 提供的那个抽象类,我想要达到这种效果,通过config.ini,key对应数据库,不用重启项目,不用改yml,相当于只改config.ini的key和数据库,就能自动持久化


IP属地:重庆来自Android客户端1楼2023-12-04 08:49回复
    spring连接数据库要先生成DataSource这个bean,按照具体使用的连接池会有不同的注入方式,然后如果orm层使用的是mybatis的话,需要生成SqlSessionFactory或者SqlSessionTemplate这两个bean。所以如果需要从这种方式使用动态数据源,就要在运行时动态注入这些bean,不知道市面上有没有现成的这种框架,但是自己实现也是可以的


    IP属地:上海来自Android客户端2楼2023-12-04 11:20
    收起回复
      druid就支持,之前做的是从数据库动态读取数据库连接配置,然后动态初始化,用完了就关。后面再用就新建


      IP属地:湖北来自Android客户端3楼2023-12-04 11:44
      收起回复
        spring这个类可以动态添加数据源啊 你可以定时去扫配置文件获取数据源信息再创建数据源


        IP属地:广西来自Android客户端4楼2023-12-04 12:04
        收起回复
          动态注入dbconfig而已吧?网上也有很多案例,可以了解下动态切换数据源,然后在起基础上修改获取数据库连接的方式即可。


          IP属地:广东来自Android客户端5楼2023-12-04 13:45
          收起回复
            你这个config.ini不也是配置文件么。跟改yml有啥区别。只需要去搜下热更新咋玩的就行了。spring.cloud.refresh


            IP属地:四川来自iPhone客户端6楼2023-12-04 17:09
            收起回复
              用链式事物管理器


              IP属地:上海来自iPhone客户端7楼2023-12-04 17:18
              回复
                在nacos上改


                IP属地:天津来自Android客户端8楼2023-12-04 19:23
                收起回复
                  自己定义数据源Bean


                  IP属地:四川来自Android客户端9楼2023-12-04 19:41
                  收起回复
                    我选择引入dynamic


                    IP属地:辽宁来自Android客户端10楼2023-12-04 21:36
                    回复
                      动态初始化数据库呗,不停服热更新,是不是?


                      IP属地:辽宁来自iPhone客户端11楼2023-12-05 02:42
                      回复
                        自己写个处理器就行了,如果要动态。但是从编码角度,一般不会这么用,因为大部分场景代码里面要指明数据源,你动态不停机加了数据源,但是代码咋用呢?有这种场景么


                        IP属地:云南来自iPhone客户端12楼2023-12-05 09:17
                        回复
                          动态配置?spring config配置中心了解一下


                          IP属地:广东13楼2023-12-05 18:00
                          回复