多数据源处理-苞米豆-dynamic

微服务项目虽然每个服务可以单独使用一个库,但是某些特定服务,如调度中心服务,定时任务等,如果还是使用rpc或者fegin频繁进行远程调用,总感觉不是很合适

所以对单服务进行了多数据源处理

使用的是苞米豆的 dynamic-datasource-spring-boot-starter

<!-- dynamic 多数据源--><dependency><groupId>com.baomidou</groupId><artifactId>dynamic-datasource-spring-boot-starter</artifactId><version>3.0.0</version></dependency>

整体架构是 mybatisplus+druid+dynamic+xxl-job

其实集成比较简单,不需要关系entity对应哪个库,自动识别的

配置文件如下

server:port: 18871spring:application:name: cloud-scheduledatasource:druid:stat-view-servlet:enabled: truedynamic:primary: dmsPro #设置默认的数据源或者数据源组,默认值即为master# 配置全局druid参数,请按需配置druid:initial-size: 10max-active: 100min-idle: 5max-wait: 6000validation-query: 'select 1'pool-prepared-statements: truemax-pool-prepared-statement-per-connection-size: 100#dynamic开始多数据源配置datasource:dmsPro:username: xxxpassword: xxxurl: xxxdriver-class-name: xxxdmsDev:username: xxxpassword: xxxurl: xxxdriver-class-name: xxxekp2Dev:username: xxxpassword: xxxurl: xxxdriver-class-name: xxx
management:endpoints:web:exposure:include: '*'xxl:job:admin:addresses: http://xxx/xxl-job-adminaccessToken:executor:appname: xxl-job-executor-Sap2Biaddress:ip:port: -1logpath: /data/applogs/xxl-job/jobhandlerlogretentiondays: 30#mybatis-plus
mybatis-plus:configuration:cache-enabled: falsemap-underscore-to-camel-case: trueglobal-config:id-type: 0field-strategy: 0db-column-underline: truerefresh-mapper: truetypeAliasesPackage: com.xx.xx.executor.core.bean.entitymapper-locations: classpath:com/xx/xx/*/mapper/*.xmllogging:level:com.baomidou: debug

如配置文件,目前有3个库 dmsPro  dmsDev  ekp2Dev 

主库为dmsPro

 

多数据源处理代码:

1.druid去除默认配置

2.@DS注解使用

@DS注解标识会默认走标识的从库

未配置会走默认dmsPro主库

@DS可以标识在类和方法上,方法优先于类

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/570909.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Druid的外网访问异常

本地启动访问无异常&#xff0c;部署至Linux服务器后无法访问 #合并多个DruidDataSource的监控数据use-global-data-source-stat: truestat-view-servlet:login-username: adminlogin-password: adminreset-enable: falseurl-pattern: /druid/*# 添加IP白名单allow: "&quo…

Linux项目第一次访问非常慢,后来很快的异常

最近项目本地访问和测试服务器访问都没出现访问很慢的问题。 近期要上生产部署&#xff0c;所以对生产环境的组件及各服务进行了部署&#xff0c;部署完成后进行测试发现请求耗时异常 比如一个订单查询请求&#xff0c;第一次请求耗时5m 或者15s 而且很有规律&#xff0c;不多…

spring注解大全

【转载】https://www.cnblogs.com/zxf330301/articles/6559210.html spring component的作用 1、controller 控制器&#xff08;注入服务&#xff09; 2、service 服务&#xff08;注入dao&#xff09; 3、repository dao&#xff08;实现dao访问&#xff09; 4、component &am…

Flink1.12.0使用过程中遇到的异常

1.Record has Long.MIN_VALUE timestamp ( no timestamp marker). Is the time characteristic set to ProcessingTime, or did you forget to call DataStream.assignTimestampsAndWatermarks(...)? 解决办法&#xff1a; 时间窗口事件选择此方法&#xff0c;Time导包也需要…

多个字段条件相同进行分组并过滤拼装SQL

select posts,term,user_name,GROUP_CONCAT(put_department) put_dept from hrbp_info group by posts,term,user_name having count(*)>1

一道清华期中考试题(逃)

据出题的jzh老师所说... 求和【问题描述】组合数 C(n,m)是从 n 个物品中取 m 个的方案数。C(n,m)(n!)/(m!(n-m)!)斐波那契数列 F 满足&#xff0c; F[0]F[1]1&#xff0c; n≥2 时 F[n]F[n-1]F[n-2]给出 n&#xff0c;求 C(n,0)F[0]C(n,1)F[1]…C(n,n)F[n]【输入格式】一行一个…

记录docker-Skywalking集成es7异常处理

遇到的问题&#xff1a; es7容器启动成功 skywalking的oap容器启动一直在restart 启动失败 处理过程&#xff1a; 1.docker logs oap容器ID 2.对应处理解决 PUT http://192.168.1.10:9200/_cluster/settings { “transient”: { “cluster”: { “max_shards_per_node”:1…

第十周补做作业

第十周课下补做作业 相关知识点的总结 Comparable接口&#xff1a;如果链表中存放的对象不是字符串数据&#xff0c;那么创建对象的类必须实现Comparable接口&#xff0c;即实现该接口中的方法int compareTo(Object b)来规定对象的大小关系。也就是让待排序对象所在的类实现Com…

PyCharm安装与配置,python的Hello World

1. 访问https://www.jetbrains.com/zh/pycharm/download/download-thanks.html, 下载pycharm 安 装包,点击安装. 2. 用记事本打开hosts文件,Windows系统hosts文件路径为&#xff1a;c:\windows\system32\drivers\etc,将0.0.0.0 account.jetbrains.com添加到hosts文件最后 3.打开…

Linux下从零开始部署和使用Jaeger

最近在折腾Jaeger&#xff0c;Jaeger官网都是介绍如何通过Docker部署&#xff0c;二进制部署文档基本没有&#xff08;已咨询过作者&#xff0c;作者说没文档&#xff01;你参考Docker自己部署好了&#xff01;&#xff01;&#xff01;&#xff09;&#xff0c;所以打算写一篇…

python 全栈开发,Day36(作业讲解(大文件下载以及进度条展示),socket的更多方法介绍,验证客户端链接的合法性hmac,socketserver)...

先来回顾一下昨天的内容 黏包现象粘包现象的成因 &#xff1a;   tcp协议的特点 面向流的 为了保证可靠传输 所以有很多优化的机制   无边界 所有在连接建立的基础上传递的数据之间没有界限   收发消息很有可能不完全相等   缓存机制&#xff0c;导致没发过去的消息会在…

Python中xPath技术和BeautifulSoup的使用

xpath基本知识 XPath语法&#xff1a;使用路径表达式来选取XML或HTML文档中的节点或节点集 路径表达式 nodename:表示选取此节点的所有子节点 / &#xff1a; 表示从根节点选取 // &#xff1a;选择任意位置的某个节点。 . &#xff1a;选取当前节点 .. &#xff1a;选…

div水平垂直居中的六种方法

在平时&#xff0c;我们经常会碰到让一个div框针对某个模块上下左右都居中&#xff08;水平垂直居中&#xff09;&#xff0c;其实针对这种情况&#xff0c;我们有多种方法实现。 方法一: 绝对定位方法&#xff1a;不确定当前div的宽度和高度&#xff0c;采用 transform: trans…

Redis集群监控及Redis桌面客户端

之前在生产环境部署了Redis集群&#xff0c;一直苦于没有工具监控&#xff0c;最近找了下网上推荐redmon和Redislive的比较多&#xff0c;查看了两个项目的github,都几年没有更新&#xff0c;这两个项目应该没有人在维护了&#xff0c;如果哪位有更好的替代方案麻烦告知&#x…

GIT安装部署

git git简介 Git不仅是一款开源的分布式版本控制系统&#xff0c;而且有其独特的功能特性&#xff0c;例如大多数的分布式版本控制系统只会记录每次文件的变化&#xff0c;说白了就是只会关心文件的内容变化差异&#xff0c;而Git则是关注于文件数据整体的变化&#xff0c;直接…

牛客网Wannafly挑战赛15 B车辆安排(模拟)AND C 出队(规律)

传送门 &#xff1a;B题&#xff1a;点我 C题&#xff1a; 点我 题目描述 有n个队伍&#xff0c;每个队伍的人数小于等于5&#xff0c;每辆车最多坐5个人&#xff0c;要求一个队伍的人都在一辆车上&#xff0c;求最少的车数 输入描述: 第一行n第二行n个数&#xff0c;表示每个队…

5-12

1,每个递归函数都有两部分&#xff0c;基线条件和递归条件 base case and recursive case 2,调用一个函数的时候&#xff0c;其他的函数调用会暂停并处于未完成的状态 3.调用栈会消耗大量的内存&#xff0c;栈很高的时候意味着计算机要存储大量的函数调用信息&#xff0c;此时的…

Team Foundation Server (TFS) 2015 安装指导

原文地址&#xff1a;http://www.cnblogs.com/danzhang/p/4718035.html http://www.cnblogs.com/danzhang 张洪君 微软ALM MVP 1. 概述 微软于8月6日发布了大家期待已久的TFS 2015正式版&#xff0c; https://www.visualstudio.com/en-us/news/tfs2015-vs.aspx &#xff0c;…

VM虚拟机链接克隆及linux eth0网卡的快速设置方法

对于后台开发者来说,在学习过程中必然接触众多中间件,在自己的虚拟机进行操作甚至搭建cluster是很常见的事情.我在初学者时摸索出一套快速的克隆虚拟机方法.分享给大家.产品VMware Workstation版本10.0.2 build-1744117这是我的虚拟机命名,我觉得这样的命名比较合适,clone机/服…

Spring MVC+Mybatis 多数据源配置

文章来自&#xff1a;https://www.jianshu.com/p/fddcc1a6b2d8 1. 继承AbstractRoutingDataSource AbstractRoutingDataSource 是spring提供的一个多数据源抽象类。spring会在使用事务的地方来调用此类的determineCurrentLookupKey()方法来获取数据源的key值。我们继承此抽象类…