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配置连接数据库的方法_第1张图片

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

你可能感兴趣的:(Spring\SpringBoot配置连接数据库的方法)