• druid链接不同数据源


    使用若依后台管理,集成自主业务,后台管理库是mysql,业务库是sqlserver;具体配置如下;

    1.pom 加入sqlserver配置

    1 <dependency>
    2             <groupId>com.microsoft.sqlserver</groupId>
    3             <artifactId>sqljdbc4</artifactId>
    4             <version>4.0</version>
    5         </dependency>

    2.application-druid.yml配置

    *注意链接不同数据库使用不同驱动

    # 数据源配置
    spring:
        datasource:
            type: com.alibaba.druid.pool.DruidDataSource
            druid:
                # 主库数据源
                master:
                    url: jdbc:mysql://localhost:3306/ry?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true
                    username: root
                    password: wuhailong123
                    driverClassName: com.mysql.jdbc.Driver
                # 从库数据源
                slave:
                    # 从数据源开关/默认关闭
                    enabled: true
                    url: jdbc:sqlserver://192.168.2.11HJCDR;DatabaseName=HJ.DEV.PDP.TEST
                    username: sa
                    password: rjgcb2.60
                    driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver
                # 初始连接数
                initial-size: 10
                # 最大连接池数量
                max-active: 100
                # 最小连接池数量
                min-idle: 10
                # 配置获取连接等待超时的时间
                max-wait: 60000
                # 打开PSCache,并且指定每个连接上PSCache的大小
                pool-prepared-statements: true
                max-pool-prepared-statement-per-connection-size: 20
                # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
                timeBetweenEvictionRunsMillis: 60000
                # 配置一个连接在池中最小生存的时间,单位是毫秒
                min-evictable-idle-time-millis: 300000
                validation-query: SELECT 1 FROM DUAL
                test-while-idle: true
                test-on-borrow: false
                test-on-return: false
                stat-view-servlet:
                    enabled: true
                    url-pattern: /monitor/druid/*
                filter:
                    stat:
                        log-slow-sql: true
                        slow-sql-millis: 1000
                        merge-sql: false
                    wall:
                        config:
                            multi-statement-allow: true

    3.业务代码中切换不同数据源

    1  @Override
    2     public List<Project> findAll() {
    3         DynamicDataSourceContextHolder.setDateSoureType("SLAVE");
    4         return projectMapper.selectProjectList(null);
    5     }
  • 相关阅读:
    Android基站定位
    删除远程分支
    docker的相关使用
    [整理]-端口的概念、常用端口及其对应服务
    [转]-nohup-真正的Shell后台运行
    转- 在ubuntu下安装Nginx
    转: 命名关键字参数
    远程SCP报错,报22号口错误
    vim保存时提示: 无法打开并写入文件
    如何处理导出的csv无法查看身份证后三位的情况?
  • 原文地址:https://www.cnblogs.com/wuhailong/p/9717289.html
Copyright © 2020-2023  润新知