Spring\SpringBoot配置连接数据库的方法

 更新时间:2021年06月02日 11:49:19   作者:小小张自由—>张有博  
最近在学习SpringBoot,第一步就是要配置数据库,本文详细的介绍了Spring\SpringBoot配置连接数据库的方法,有需要的朋友们下面随着小编来一起学习学习吧

Spring配置连接数据库

设置jdbc.properties

jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/SSM
jdbc.username=root
jdbc.password=root

创建配置类

/**
 * @Author: Promsing
 * @Date: 2021/5/30 - 14:52
 * @Description:连接数据库的配置类
 * @version: 1.0
 */
@Configuration//声明该类是一个java配置类,相当于一个xml配置文件
@PropertySource("classpath:jdbc.properties") //读取资源文件
public class JdbcConfiguration {
 
    @Value("${jdbc.driverClassName}")
    private String driverClassName;
 
    @Value("${jdbc.url}")
    private String url;
 
    @Value("${jdbc.username}")
    private String username;
 
    @Value("${jdbc.password}")
    private String password;
 
    @Bean //将返回值注入到IOC容器中
    public DataSource dataSource(){
        DruidDataSource dataSource=new DruidDataSource();
        //设置连接数据库的四大参数
        dataSource.setDriverClassName(this.driverClassName);
        dataSource.setUrl(this.url);
        dataSource.setUsername(this.username);
        dataSource.setPassword(this.password);
        return dataSource;
    }
 
}

SpringBoot配置连接数据库

设置application.properties

jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/SSM
jdbc.username=root
jdbc.password=root

创建配置类-JdbcProperties

/**
 * @Author: Promsing
 * @Date: 2021/5/30 - 15:41
 * @Description: 封装了读取出来的配置文件
 * @version: 1.0
 */
@ConfigurationProperties(prefix = "jdbc")
public class JdbcProperties {
 
    private String driverClassName;
 
    private String url;
 
    private String username;
 
    private String password;
 
   public void setDriverClassName(String driverClassName) {
        this.driverClassName = driverClassName;
    }
 
    public void setUrl(String url) {
        this.url = url;
    }
 
    public void setUsername(String username) {
        this.username = username;
    }
 
    public void setPassword(String password) {
        this.password = password;
    }
 
    public String getDriverClassName() {
        return driverClassName;
    }
 
    public String getUrl() {
        return url;
    }
 
    public String getUsername() {
        return username;
    }
 
    public String getPassword() {
        return password;
    }
}

创建配置类-JdbcConfiguration

/**
 * @Author: Promsing
 * @Date: 2021/5/30 - 14:52
 * @Description: 连接数据库的Java配置类
 * @version: 1.0
 */
@Configuration//声明该类是一个java配置类,相当于一个西xml配置文件
@EnableConfigurationProperties(JdbcProperties.class) //加载JDBC的配置类
public class JdbcConfiguration {
 
 
    @Autowired
    private JdbcProperties jdbcProperties;
 
    //方式一
    @Bean //将返回值注入到IOC容器中
    public DataSource dataSource(){
        DruidDataSource dataSource=new DruidDataSource();
        //设置连接数据库的四大参数
        dataSource.setDriverClassName(this.jdbcProperties.getDriverClassName());
        dataSource.setUrl(this.jdbcProperties.getUrl());
        dataSource.setUsername(this.jdbcProperties.getUsername());
        dataSource.setPassword(this.jdbcProperties.getPassword());
        return dataSource;
    }
    
      /*
        //方式二:最优雅最简单--直接换掉方式一
        @Bean //将返回值注入到IOC容器中
        @ConfigurationProperties(prefix = "jdbc")
        public DataSource dataSource(){
            DruidDataSource dataSource=new DruidDataSource();
        return dataSource;
        }
    * */
 
    /*
        //方式三通过构造函数注入--在方式一上的方式修改
        public JdbcConfiguration(JdbcProperties jdbcProperties) {
            this.jdbcProperties = jdbcProperties;
        }
    * */
    
    /*
        //方式四通过方法的参数注入--直接换掉方式一
        public DataSource dataSource(dbcProperties jdbcProperties){
             DruidDataSource dataSource=new DruidDataSource();
            //设置连接数据库的四大参数
            dataSource.setDriverClassName(jdbcProperties.getDriverClassName());
            dataSource.setUrl(jdbcProperties.getUrl());
            dataSource.setUsername(jdbcProperties.getUsername());
            dataSource.setPassword(jdbcProperties.getPassword());
            return dataSource;
//    }
    * */
    
    
}

SpringBoot的四种属性注入方式

1. Autowired注入

2.直接在@Bean方法中使用@ConfigurationProperties(prefix = "jdbc")

3.构造函数主语

4.@Bean方法形参注入

需要注意的是配置文件中的名称要与 JdbcProperties中的属性名称要一致。项目开发过程中第二种最优雅最简洁,但是我们最常用的还是第一种,这一种更符合我们的开发习惯,书写习惯。

Debug方式启动,以上几种方式都能给 DruidDataSource赋值。

到此这篇关于Spring\SpringBoot配置连接数据库的方法 的文章就介绍到这了,更多相关SpringBoot配置连接数据库内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • hibernate多表操作实例代码

    hibernate多表操作实例代码

    这篇文章主要介绍了hibernate多表操作实例代码,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-02-02
  • JAVA多线程实现的四种方式及使用场景详解

    JAVA多线程实现的四种方式及使用场景详解

    这篇文章主要介绍了JAVA多线程实现的四种方式及使用场景,并举例说明了在管理系统中多线程的应用场景,如数据导入导出、数据缓存更新、并发用户操作处理、系统监控和定时任务执行,需要的朋友可以参考下
    2025-01-01
  • Java根据身份证号计算年龄,15位身份证号码转18位原理与操作示例

    Java根据身份证号计算年龄,15位身份证号码转18位原理与操作示例

    这篇文章主要介绍了Java根据身份证号计算年龄,15位身份证号码转18位原理与操作,结合实例形式详细分析了构成身份证号码的各个位的含义,15位身份证号码转18位的方法及Java根据身份证号计算年龄相关操作技巧,需要的朋友可以参考下
    2019-10-10
  • SpringBoot时间格式化的方法小结

    SpringBoot时间格式化的方法小结

    SpringBoot中的时间格式化通常指的是将Java中的日期时间类型转换为指定格式的字符串,或者将字符串类型的时间解析为Java中的日期时间类型,本文小编将给大家详细总结了SpringBoot时间格式化的方法,刚兴趣的小伙伴跟着小编一起来看看吧
    2023-10-10
  • Java的内存机制详解

    Java的内存机制详解

    本文主要介绍了Java的内存机制的相关知识,具有很好的参考价值,下面跟着小编一起来看下吧
    2017-03-03
  • Java如何生成压缩文件工具类

    Java如何生成压缩文件工具类

    这篇文章主要介绍了Java如何生成压缩文件工具类问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • java飞行棋实现思路

    java飞行棋实现思路

    这篇文章主要为大家详细介绍了java飞行棋的实现思路,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-09-09
  • 详解Java如何优雅地书写if-else

    详解Java如何优雅地书写if-else

    在日常开发中我们常常遇到有多个if else的情况,之间书写显得代码冗余难看,对于追求更高质量代码的同学,就会思考如何优雅地处理这种代码。本文我们就来探讨下几种优化if else的方法
    2022-08-08
  • 解决IDEA Maven下载依赖时报错ERROR - #org.jetbrains.idea.maven - Cannot reconnect.

    解决IDEA Maven下载依赖时报错ERROR - #org.jetbrains.ide

    这篇文章主要介绍了解决IDEA Maven下载依赖时报错ERROR - #org.jetbrains.idea.maven - Cannot reconnect.问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • Spring boot中mongodb的使用

    Spring boot中mongodb的使用

    MongoDB是最早热门非关系数据库的之一,使用也比较普遍,一般会用做离线数据分析来使用,放到内网的居多。这篇文章主要介绍了Spring boot中mongodb的使用,需要的朋友可以参考下
    2017-05-05

最新评论