springboot+mybatis 配置双数据源

SpringBoot配置双数据源,MyBatis-Plus分页插件配置 问题:spring boot配置单数据源的时候,mybatis-plus分页插件正常使用,当spring boot配置双数据源的时候,原来的mybatis-plus分页插件失效。 解决办法: 1、mybatis-plus分页插件配置类 import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import com.baomidou.myb. 阅读详情

在这里插入图片描述
文件放置的位置,对应的同一个数据库的dao要放在同一个包里

1.配置文件application.yml

spring:
  datasource:
    driverClassName: com.mysql.jdbc.Driver
    test1:
      #driver-class-name: com.mysql.jdbc.Driver
      jdbc-url: jdbc:mysql://xxxx:3306/tqsq? serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&verifyServerCertificate=false&autoReconnct=true&autoReconnectForPools=true&allowMultiQueries=true
      username: 
      password: 
    test2:
      #driver-class-name: com.mysql.jdbc.Driver
      jdbc-url: jdbc:mysql://xxxxx:3306/jiameng?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&verifyServerCertificate=false&autoReconnct=true&autoReconnectForPools=true&allowMultiQueries=true
      username: 
      password: 

2.配置config—dataSource1文件

@Configuration
@MapperScan(basePackages = "com.zhy.dao.test1",sqlSessionFactoryRef = "db1SqlSessionFactory")
public class DataSource1Config {
    /**
     * 返回db1数据库的数据源
     * @return
     */
    @Bean(name = "db1DataSource")
    @ConfigurationProperties(prefix = "spring.datasource.test1")
    @Primary
    public DataSource testDataSource(){

        return DataSourceBuilder.create().build();
    }

    /**
     * 创建sqlsessionfactory  工厂会话
     * @param dataSource
     * @return
     */
    @Bean(name = "db1SqlSessionFactory")
    @Primary
    public SqlSessionFactoryBean testSqlSessionFactory(@Qualifier("db1DataSource") DataSource dataSource) throws Exception {
        SqlSessionFactoryBean bean  =new SqlSessionFactoryBean();
        bean.setDataSource(dataSource);
    //    bean.setMapperLocations(new Resource[]{new PathMatchingResourcePatternResolver().getResource("classpath:com.zhy.dao.test1.*.xml")});//路径
        Resource[] resources = new PathMatchingResourcePatternResolver()
                .getResources("classpath*:com/zhy/dao/test1/*Mapper.xml");

        bean.setMapperLocations(resources);
        return bean;

    }

    /**
     * 配置事务管理
     * @param dataSource
     * @return
     */
    @Bean(name = "db1TransactionManager")
    @Primary
    public DataSourceTransactionManager testTransactionManager(@Qualifier("db1DataSource")DataSource dataSource){
            return new DataSourceTransactionManager(dataSource);
    }

    /**
     * 返回数据库会话模板
     * @param sqlSessionFactory
     * @return
     */
    @Bean(name = "db1SqlSessionTemplate")
    @Primary
    public SqlSessionTemplate testSqlSessionTemplate(@Qualifier("db1SqlSessionFactory")SqlSessionFactory sqlSessionFactory){
            return new SqlSessionTemplate(sqlSessionFactory);
    }

}

3.配置config—dataSource2文件

@Configuration
@MapperScan(basePackages = "com.zhy.dao.test2",sqlSessionFactoryRef = "db2SqlSessionFactory")
public class DataSource2Config {

    @Bean(name = "db2DataSource")
    @ConfigurationProperties(prefix = "spring.datasource.test2")
    public DataSource testDataSource(){

        return DataSourceBuilder.create().build();
    }

    /**
     * 创建sqlsessionfactory
     * @param dataSource
     * @return
     */
    @Bean(name = "db2SqlSessionFactory")
    public SqlSessionFactoryBean testSqlSessionFactory(@Qualifier("db2DataSource") DataSource dataSource) throws Exception {
        SqlSessionFactoryBean bean  =new SqlSessionFactoryBean();
        bean.setDataSource(dataSource);
     //   bean.setMapperLocations(new Resource[]{new PathMatchingResourcePatternResolver().getResource("classpath:com.zhy.dao.test2.*.xml")});//路径
      //      return bean.getObject();
        Resource[] resources = new PathMatchingResourcePatternResolver()
                .getResources("classpath*:com/zhy/dao/test2/*Mapper.xml");

        bean.setMapperLocations(resources);
        return bean;

    }

    /**
     * 配置事务管理
     * @param dataSource
     * @return
     */
    @Bean(name = "db2TransactionManager")
    public DataSourceTransactionManager testTransactionManager(@Qualifier("db2DataSource")DataSource dataSource){
            return new DataSourceTransactionManager(dataSource);
    }

    @Bean(name = "db2SqlSessionTemplate")
    public SqlSessionTemplate testSqlSessionTemplate(@Qualifier("db2SqlSessionFactory")SqlSessionFactory sqlSessionFactory){
            return new SqlSessionTemplate(sqlSessionFactory);
    }

}
如何在Spring Boot中配置双数据源? 如何在Springboot中配置双数据源? 阅读详情

相关推荐

SpringBoot + mybatis-plus + druid 实现mySql与Orcl双数据源

SpringBoot + mybatis-plus + druid 实现mySql与Orcl双数据源

springboot配置多个数据源(两种方式)

在我们的实际业务中可能会遇到;在一个项目里面读取多个数据库的数据来进行展示,spring对同时配置多个数据源是支持的。 本文中将展示两种方法来实现这个功能。 springboot+mybatis 第一种方式: 在配置文件中配置多个数据源,然后通过配置类来获取数据源以及mapper相关的扫描配置 pom.xml <parent> <groupId>org.s...

qq_38058332的博客 10万+

基于Sentinel-2(哨兵2)遥感卫星的植被覆盖度提取

基于Sentinel-2(哨兵2)遥感卫星的植被覆盖度提取 一、Sentinel-2简单介绍 哨兵-2系列卫星的主要载荷多光谱成像仪拥有13个谱段,从可见光到近红外再到短波红外,空间分辨率从10m到60m,能实现全所未有的陆地海洋监测水平。其幅宽高达290KM,且A、B双星组合,覆盖能力比美国Landsat8卫星强很多。目前哨兵-2A和哨兵-2B已经实现了5天的重访时间,即使在之前仅有单颗卫星时,...

weixin_44143671的博客 2万+

Springboot配置双数据源

双数据源配置

Tony666688888的博客 1502

保姆级避坑指南:用Livox官方工具搞定Mid-360多雷达自动标定(附源码Bug修复)

本文详细解析了使用Livox官方工具进行Mid-360多雷达自动标定的全流程,包括环境搭建、工具链配置、关键Bug修复及数据采集最佳实践。重点解决了PointCloudMapper.cpp边界检查缺失和calibration.cpp点云显示问题,提供了实用的代码修复方案和标定质量评估指标,帮助开发者高效完成激光雷达标定任务。

weixin_29053695的博客 278

工作中SVN的使用,保姆级教程!

SVN是一款集中式版本控制系统,采用客户端-服务器模式管理代码版本。与Git相比,SVN在目录权限控制、大型二进制文件处理等方面具有优势,适合特定场景使用。本文介绍了SVN的安装方法、基本操作(检出、提交、更新、回滚等)以及分支管理(创建、合并、切换)。同时讲解了文件冲突的解决方法,并演示了如何在IDEA中集成SVN工具。SVN虽然逐渐被Git取代,但在某些特定场景下仍是可靠选择,工具选择应基于团队和项目需求。

胜人者有力,自胜者强! 1848

Spring Boot 配置双数据源

添加依赖添加 Spring Boot 和数据库驱动的依赖配置数据源在 application.properties 或 application.yml 中分别配置两个数据源的连接信息创建数据源配置类创建两个数据源的配置类,分别配置数据源相关信息配置数据源事务管理器创建两个数据源的事务管理器,并指定数据源配置 JPA 实体管理器工厂创建两个 JPA 实体管理器工厂,并指定数据源和配置信息配置事务注解支持启用事务注解支持,并指定事务管理器在 DAO 层使用数据源。

专注Java(全栈)应用开发,求知若渴,虚心若愚,talk is cheap, show me the code. 3341

SRv6第二弹:SRv6基本概念

在SRv6网络编程中,不同的转发行为由不同的Function来标识,例如在RFC中定义了公认的End、End.X、End.DX4、End.DX6等。例如:R3使用报文的IPv6目的地址FC03::3查找Local SID表,命中到End SID,随后R3将报文SL减1,同时将SL=1的SID做为报文目标IPv6地址,并查路由表转发出去。SID支持静态配置或者动态分配,end-op、end、end.x、end-dt4、end-dt6、end-dx2推荐静态配置 ,便于网络运维,其他的SID可以动态分配。

wbyyy的博客 4244

SpringBoot中的双数据源配置

1.引入使用的数据源类型(mysql oracle sqlserver等)依赖 本文配置为oracel和postgresql <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> <version>11.2.0.3</version>

DXIANGH的博客 1884

锂电池的充电和放电曲线解读

锂电池充放电曲线是反映其性能的关键指标。充电曲线分为恒流和恒压两阶段:恒流阶段电压快速上升,恒压阶段电流逐渐降低;放电曲线则呈现平台期和快速衰减期特征。这些曲线受温度、充放电倍率及材料体系(如三元锂或磷酸铁锂)显著影响。通过分析曲线特征,可优化电池管理系统,实现精准的SOC估算、快充策略制定及故障诊断,从而在电池性能与安全性间取得平衡。不同应用场景(如新能源汽车或消费电子)对曲线形态有特定要求。

start_up_go的博客 5062

【银河麒麟桌面系统】安装英伟达(NVIDIA)显卡驱动

本文详细介绍了在麒麟桌面操作系统V10 SP1(版本号2503)上安装NVIDIA RTX 5060显卡驱动的完整流程。主要内容包括:查看系统版本信息,从NVIDIA官网下载Linux 64位驱动,授予执行权限后运行安装程序,处理安装过程中的X server警告、32位库安装、DKMS模块选择等问题,以及安装完成后如何验证驱动状态。同时提供了卸载驱动的步骤和常见问题解决方案,如处理X server警告、libglvnd EGL依赖问题等。该指南适用于需要在国产麒麟系统上安装NVIDIA显卡驱动的用户,包含完

信创运维工程师 · 银河麒麟 & 容器实战 | 金融生产环境迁移·等保加固 | 142篇原创·17万+阅读 6305

SpringBoot+mybatis整合双数据源mysql、clickhouse并配置Mybatis拦截器

这是一个在 Spring Boot 项目中配置双数据源(MySQL 和 ClickHouse)并使用 MyBatis 拦截器实现动态数据源切换的示例

qq_40145043的博客 1218

构建AI Agent驱动的智能健康管理系统

数据碎片化:健康数据分散在不同的设备和平台中,难以统一管理和分析。个性化不足:健康管理方案通常是通用的,难以根据个人的健康状况实时调整。用户参与度低:用户难以获得及时、个性化的健康建议,导致健康管理效果不佳。AI Agent是一个能够感知环境、采取行动以实现目标的智能实体。根据智能体的智能水平,可以分为简单反应式智能体和复杂适应式智能体。实时监测健康数据。获取个性化的健康建议。收到健康风险预警。

AI天才研究院 749

SpringBoot增加Mybatis-plus并配置双数据源

MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 Mybatis-Plus官网地址 1.创建sb项目 2.添加MyBatis-Plus依赖 <!-- 以上省略sb的相关依赖,下面这个是web项目依赖 --> <dependency> <groupId>...

huoyan的博客 3820

Vue3 - 详细实现移动端H5网页调用摄像头拍照功能,微信公众号网页h5页面打开本地摄像头并点击按钮照相,vue3获取摄像头画面执行拍照保存,调整摄像头前置后置抓拍图片给用户展示或保存手机上传服务器

vue3,H5网页,手机移动端,vue3摄像头拍照,前端h5调用手机摄像头,移动端网页调用摄像头,H5实现手机拍照和选择上传,调用本地摄像头实现拍照,vue3调用摄像头拍照,手机浏览器开启摄像头并进行拍照,H5移动端网页中调用手机摄像头,H5实现web调用摄像头在线照相,vue3h5调用摄像头,微信公众号网页如何调用摄像头拍照,公众号H5页面实现打开摄像头照相,怎么生成临时图片,vue3项目调用摄像头实现拍照功能,摄像头打不开没反应,浏览器不兼容怎么办,摄像头权限不弹出,只能在本地运行,拒绝权限后怎么办,

🏆 前端领域优质创作者 1万+

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

SpringBoot + MyBatis + MySQL + SQLServer 双数据源配置实现

SpringBoot + MyBatis + MySQL + SQLServer 双数据源配置实现 去发现同类优质开源项目:https://gitcode.com/ 此仓库提供了一个使用SpringBoot框架、MyBatis持久层框架以及MySQL和SQLServer数据库实现双数据源的完整解决方案,通过Spring AOP技术实现数据源自动切换。 简介 在当代企业级应用开发中,经常会遇到需要连...

gitblog_06768的博客 957

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Spring Boot + MyBatis Plus 配置双数据源

背景: 有一个项目需要进行数据同步,源数据是oracle数据库,目标数据库是mysql,源数据库的表和目标数据库的表名不一样,字段不一样,在同步的时候目标数据库的表的某个字段需要源数据库的两个表且需要计算逻辑才能同步,想就直接利用spring boot配置双数据源,读取oracle数据库中表,再进行逻辑计算,写入对应的mysql数据表的对应字段。 项目结构 pom.xml依赖 <!--mybatis plus--> <dependency>

honor_zhang的博客 1831

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

springboot mybatis双数据源配置(转)

springboot mybatis双数据源配置(转) 转载的地址 :https://blog.youkuaiyun.com/weixin_42036952/article/details/89517065 yml 配置: spring: datasource: druid: master: driver-class-name: com.mysql.jdbc.Driver jdbc-url: jdbc:m...

qq_36133741的博客 351

springBoot+mybatis 配置双数据源

springboot双数据源配置,并使用事务管理

weixin_52431316的博客 2006

spring boot集成mybatis配置mysql+oracle双数据源

spring boot集成mybatis配置mysql+oracle双数据源 最近公司项目需要用到mysql和oracle数据库,就是固定的有些接口用mysql,有些接口用oracle。参考了网上很多资源,大致确定了方向和实现步骤,最终以github上一个开源实现完成了需求。网址为:https://github.com/djkdeveloper/springboot-mybatis 下面总结一下我的实现步骤 1.application.yml 配置mysql和oracle数据源 spring: .

flytalei的博客 2192

记录 springboot + mybatis 项目如何配置双数据源

有时一个web项目中需要同时访问两个数据库,比如读写分离、分库、主从库分离等,这时,常规的springboot单数据源就无法满足需求,需要对配置进行调整。本文记录了实际工作中配置双数据源时遇到的一些问题和解决思路。

qq_32139981的博客 4185

springBoot配置mybatis-plus双数据源

springBoot配置mybatis-plus双数据源遇到的问题 1. 配置数据源 合理的创建标题,有助于目录的生成 直接输入1次#,并按下space后,将生成1级标题。 输入2次#,并按下space后,将生成2级标题。 以此类推,我们支持6级标题。有助于使用TOC语法后生成一个完美的目录。 如何改变文本的样式 强调文本 强调文本 加粗文本 加粗文本 标记文本 删除文本 引用文本 H2O is是液体。 210 运算结果是 1024. 插入链接与图片 链接: link. 图片: 带尺寸的图片:

qq_42208194的博客 514

SpringBoot-Mybatis 配置双数据源

SpringBoot-Mybatis 配置双数据源 文章目录SpringBoot-Mybatis 配置双数据源@[toc]Demo简介构建数据库构建SpringBoot项目添加Mybatis 依赖和MySql 驱动目录结构如图所示配置数据库信息编写配置类PrimaryDBConfig&SecondaryDBConfig 类 SpringBoot -Mybatis 配置双数据源! Demo简介 本地两个数据库multi_datasource_mybatis_demo_db_01& mul

weixin_44779019的博客 692

spring boot下mybatis配置双数据源

最近项目上遇到需要双数据源的来实现需求,并且需要基于spring boot,mybatis的方式来实现,在此做简单记录。 单一数据源配置 单一数据源配置的话并没有什么特别的,在spring boot框架下,只需要在配置文件内添加对应的配置项即可,spring boot会自动初始化需要用到的bean。 配置信息如下。这里使用的是德鲁伊的数据源配置方式 #datasource配置 spring.dat...

嘎嘎的博客 2790

SpringBoot+Mybatis+druid配置双数据源

最近因为公司业务,数据量比较大,需要进行数据库查询优化,于是采用了TiDB分布式数据库,使用集群的方式减轻数据库压力。 中间引入了双数据源处理,也走了很多弯路在此进行记录,仅供参考 1、pom.xml引入相关相关配置 <dependency> <groupId>com.alibaba</groupId> ...

whl 博客专栏 2万+
上一篇: 微信下载对账单
junenv
博客等级 码龄9年 1粉丝 8原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值