文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

SpringBoot集成多数据源解析

2023-05-30 21:37

关注

一,前面我们介绍了springboot的快速启动,大家肯定对springboot也有所了解,下面我们来介绍一下springboot怎么集成多数据源。

在有的项目开发中需要在一个项目中访问多个数据源或者两个项目之间通信(实质上是互相访问对方的数据库),在这里,我们介绍一下在一个项目中如何集成多个数据源(即访问多个不同的数据库),因为在项目中有时会有这种需求,比如在一个大型项目开发中,一个数据库中保存数据的索引,各种使用频繁的数据,另一个数据库中保存其他的数据。

下面我们来讨论一个问题,怎么集成多数据源,就是怎么让一个项目访问多个数据库?

有的人会说使用注解,没错,这是一种办法,因为springboot对的最大好处就是避免了繁琐的xml配置文件,大量的使用注解来开发,方便简洁,但是在这里如果集成多数据源使用注解的话会很麻烦,有没有其他的办法呢?答案是肯定的,我们可以分模板来访问多个数据库,也就是分包。

如何分包来访问多个数据源?

在这里,我们用一个简单的案例来说明,我们访问新建一个spingboot项目,访问test1,test2这两个数据库,首先,我们先看代码。

首先,我们需要导入相关依赖在pom文件中,这里,因为我的项目已经提前有了父pom,所以不再考虑依赖的版本问题,怎么建立父pom可参考上一篇文章。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent>  <groupId>cn.shinelon.springboot</groupId>  <artifactId>microboot</artifactId>  <version>0.0.1-SNAPSHOT</version> </parent> <artifactId>springboot-MultiDatasources</artifactId> <packaging>war</packaging> <!-- maven项目packaging改为war类型时,必须要加这个插件 -->  <build>    <plugins>      <plugin>        <groupId>org.apache.maven.plugins</groupId>        <artifactId>maven-war-plugin</artifactId>        <version>2.3</version>        <configuration>          <failOnMissingWebXml>false</failOnMissingWebXml>        </configuration>      </plugin>    </plugins>  </build>  <dependencies>    <dependency>      <groupId>org.springframework.boot</groupId>      <artifactId>spring-boot-starter-web</artifactId>    </dependency>    <!-- 测试springboot的依赖 -->    <dependency>      <groupId>org.springframework.boot</groupId>      <artifactId>spring-boot-starter-test</artifactId>      <scope>test</scope>    </dependency>  <!-- 测试时加入这两个依赖,当修改代码的时候就不用每次修改后重启服务器了 -->  <dependency>    <groupId>org.springframework</groupId>    <artifactId>springloaded</artifactId>  </dependency>  <dependency>    <groupId>org.springframework.boot</groupId>    <artifactId>spring-boot-devtools</artifactId>  </dependency>  <!-- springboot 集成jsp必须要借助这两个依赖 -->  <dependency>    <groupId>org.springframework.boot</groupId>    <artifactId>spring-boot-starter-tomcat</artifactId>  </dependency>  <dependency>    <groupId>org.apache.tomcat.embed</groupId>    <artifactId>tomcat-embed-jasper</artifactId>  </dependency>  <!-- springboot集成mybatis -->  <dependency>    <groupId>org.mybatis.spring.boot</groupId>    <artifactId>mybatis-spring-boot-starter</artifactId>    <version>1.3.0</version>  </dependency>  <dependency>    <groupId>mysql</groupId>    <artifactId>mysql-connector-java</artifactId>  </dependency> </dependencies></project>

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 资料下载
  • 历年真题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     801人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     348人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     311人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     432人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     220人已做
    查看

相关文章

发现更多好内容
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯