spring 数据源配置

这篇具有很好参考价值的文章主要介绍了spring 数据源配置。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

写在最前面

前端时间在处理公司老项目改造使用新框架的事情,对于spring数据源配置这块有些疑惑,就翻了一下资料,了解了下spring 数据源配置相关的知识,这里记录一下。

默认数据源

spring boot 默认支持4种数据源类型,定义在 org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration中

1.  org.apache.tomcat.jdbc.pool.DataSource
2.  com.zaxxer.hikari.HikariDataSource
3.  org.apache.commons.dbcp.BasicDataSource
4.  org.apache.commons.dbcp2.BasicDataSource

对于上述四种数据源,在相关类存在classpath时,会通过自动配置生成对应的 DataSource Bean,当存在多种数据源时,会按照优先级生成优先级高的:Tomcat–> Hikari --> Dbcp --> Dbcp2 。

添加依赖与配置

1. 在Springboot 使用JDBC可直接添加官方提供的 spring-boot-start-jdbc 或者 spring-boot-start-data-jpa 依赖。

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>${spxmlring-boot-version}</version>
</parent>
<dependencies>
    <!-- 添加MySQL依赖 -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
    </dependency>
    <!-- 添加JDBC依赖 -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-jdbc</artifactId>
    </dependency>
</dependencies>

2. 在核心配置application.properties或者application.yml文件中添加数据源相关配置。

# application.yml文件中添加如下配置:

# application.yml文件中添加如下配置:
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8
    driverClassName: com.mysql.jdbc.Driver
    username: root
    password: root

切换默认数据源

1. 方式一 排除其他的数据源依赖,仅保留需要的数据源依赖;

          <!-- 添加JDBC依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
            <exclusions>
                <!-- 排除Tomcat-JDBC依赖 -->
                <exclusion>
                    <groupId>org.apache.tomcat</groupId>
                    <artifactId>tomcat-jdbc</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <!-- 添加HikariCP依赖 -->
        <dependency>
            <groupId>com.zaxxer</groupId>
            <artifactId>HikariCP</artifactId>
        </dependency>

2. 方式二 通过在核心配置中通过spring.datasource.type属性指定数据源的类型;

spring.datasource.type=com.zaxxer.hikari.HikariDataSource
# spring.datasource.type=org.apache.tomcat.jdbc.pool.DataSource
# spring.datasource.type=org.apache.commons.dbcp.BasicDataSource
# spring.datasource.type=org.apache.commons.dbcp2.BasicDataSource

第三方数据源

很多公司会使用三方数据源,这里记录一下三方数据源的配置,以 阿里开源的 Druid为例。

添加依赖与配置

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>${spring-boot-version}</version>
    </parent>
    <dependencies>
        <!-- 添加MySQL依赖 -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
        <!-- 添加JDBC依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
        <!-- 添加Druid依赖 -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.1.6</version>
        </dependency>
    </dependencies>

定义数据源

使用注解@Bean 创建一个DataSource Bean并将其纳入到Spring容器中进行管理即可。

@Configuration
public class DataSourceConfig {
 
    @Autowired
    private Environment env;
 
    @Bean
    public DataSource getDataSource() {
        DruidDataSource dataSource = new DruidDataSource();
        dataSource.setUrl(env.getProperty("spring.datasource.url"));
        dataSource.setUsername(env.getProperty("spring.datasource.username"));
        dataSource.setPassword(env.getProperty("spring.datasource.password"));
        return dataSource;
    }
}

写在最后

看过、读过的东西一定要记录下来,强化记忆否则过段时就就会忘记。关于数据源的内容看了很多遍,我还是会时不时的忘记。记录在这里与大家共勉文章来源地址https://www.toymoban.com/news/detail-701302.html

到了这里,关于spring 数据源配置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Spring Boot 配置双数据源

    Survive by day and develop by night. talk for import biz , show your perfect code,full busy,skip hardness,make a better result,wait for change,challenge Survive. happy for hardess to solve denpendies. 需求: 1.基本步骤 添加依赖 添加 Spring Boot 和数据库驱动的依赖 配置数据源 在 application.properties 或 application.yml 中分别配

    2024年01月22日
    浏览(66)
  • Spring Boot配置多个Kafka数据源

    application.properties配置文件如下 1.第一个kakfa 2.第二个kakfa 备注: 生产者消费者代码参考链接,开发同学需要以实际情况按要求自己变更下代码即可: Spring Boot 集成多个 Kafka_springboot集成多个kafka_//承续缘_纪录片的博客-CSDN博客

    2024年02月07日
    浏览(75)
  • Spring Boot整合Mybatis配置多数据源

    在之前的事件管理系统博客中有提到动态的多数据源配置 工作中难免需要做几个工具方便自己偷懒,加上之前的挡板,数据源肯定没法单一配置,所以需要多数据源配置。这里介绍两种配置:动态数据源和固定数据源模式。这两种我在目前的工作的工具开发中都有用到。 M

    2024年01月23日
    浏览(72)
  • 如何在Spring Boot中配置双数据源?

    在许多应用程序中, 可能会遇到需要连接多个数据库的情况 。这些数据库可以是不同的类型,例如关系型数据库和NoSQL数据库,或者它们可以是相同类型但包含不同的数据。为了处理这种情况,我们可以使用双数据源来管理多个数据库连接。 双数据源是指在一个应用程序中

    2024年02月11日
    浏览(51)
  • spring boot下基于spring data jpa配置mysql+达梦多数据源(以不同包路径方式,mysql为主数据源)

    :mysql 达梦/dameng jpa 多数据源 spring boot:2.1.17.RELEASE mysql驱动:8.0.21(跟随boot版本) 达梦驱动:8.1.2.192 lombok:1.18.12(跟随boot版本) 以mysql为主数据源,达梦为第二数据源方式配置 适用于旧项目二次开发接入达梦数据库或基于通用二方/三方包做业务扩展等场景 将以不

    2024年02月05日
    浏览(64)
  • Spring Boot MyBatis Plus 配置数据源详解

    🎉欢迎来到架构设计专栏~Spring Boot MyBatis Plus 配置数据源详解 ☆* o(≧▽≦)o *☆嗨~我是IT·陈寒🍹 ✨博客主页:IT·陈寒的博客 🎈该系列文章专栏:架构设计 📜其他专栏:Java学习路线 Java面试技巧 Java实战项目 AIGC人工智能 数据结构学习 🍹文章作者技术和水平有限,如果文

    2024年01月21日
    浏览(57)
  • Spring Boot多数据源配置详解及报错问题解决

    Spring Boot多数据源配置详解 前几天,公司提了个需求,对一个项目进行二次开发,在开发过程中,需要配置多数据源来进行数据库的操作。下面我将主键探索总结的配置流程和遇到的各种坑做以总结,希望能够帮到遇到同样问题的友友。有错的地方,请各位大佬留言指出。

    2024年02月16日
    浏览(53)
  • Spring Boot 2.7.5 HikariCP 连接池多数据源配置

    当前项目遇到需要连接多个数据库的场景,此时需要引入多数据源了. 还有一些诸如以下的场景: 与第三方对接时,有些合作方并不会为了你的某些需求而给你开发一个功能,他们可以提供给你一个可以访问数据源的只读账号,你需要获取什么数据由你自己进行逻辑处理,这时

    2024年02月05日
    浏览(50)
  • 用Java基于Spring框架搭建一套支持多数据源的web系统框架

    在使用Java Spring框架搭建支持多数据源的Web系统框架时,你可以按照以下步骤进行: 步骤一:添加依赖 首先,在 pom.xml 文件中添加Spring Boot和相关数据库依赖: 步骤二:配置多数据源 创建多个数据源配置类,每个数据源对应一个数据库连接: 配置  application.properties  文件,

    2024年03月15日
    浏览(44)
  • 后端项目开发:集成Druid数据源

    Druid作为连接池中间件可以监控数据库访问性能,对数据库密码加密,查看SQL执行日志,扩展JDBC。 添加依赖 参考官方文档:https://github.com/alibaba/druid/wiki 更多配置参考:https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter 启动应用:访问http://localhost:8001/druid/login.html查看监

    2024年02月11日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包