avatar

SpringBoot 整合Jdbc获取配置文件数据源的两种方式

一、通过@Configuration注解获取

方法一

1、application.properties

1
2
3
4
jdbc.driverClassName=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql:///xxx
jdbc.username=root
jdbc.password=root

2、创建实体类

并生成 getter 和 setter 方法

1
2
3
4
5
6
public class JdbcProperties {
private String driverClassName;
private String url;
private String username;
private String password;
}

3、创建配置类

1
2
3
4
5
6
7
8
9
10
11
12
13
@Configuration
@EnableConfigurationProperties(JdbcProperties.class)//指定加载哪个配置属性类
public class JdbcConfiguration {
@Bean
public DataSource getDataSource(JdbcProperties jdbcProperties){
DruidDataSource source = new DruidDataSource();
source.setDriverClassName(jdbcProperties.getDriverClassName());
source.setUrl(jdbcProperties.getUrl());
source.setUsername(jdbcProperties.getUsername());
source.setPassword(jdbcProperties.getPassword());
return source;
}
}

方法二

只需要配置类编写,不需要实体类

1、application.properties

1
2
3
4
jdbc.driverClassName=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql:///xxx
jdbc.username=root
jdbc.password=root

2、创建配置类

1
2
3
4
5
6
7
8
9
@Configuration
public class JdbcConfiguration {
@Bean
@ConfigurationProperties(prefix = "jdbc")
public DataSource getDataSource(){
DruidDataSource source = new DruidDataSource();
return source;
}
}

二、通过配置文件配置数据源

方法一:使用HikariDataSource 数据源

1
2
3
4
spring.datasource.url=jdbc:mysql:///xxx
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=root
spring.datasource.password=root

方法二:使用Druid数据源

1
2
3
4
5
spring.datasource.url=jdbc:mysql:///day17?useSSL=false
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=root
spring.datasource.password=66634
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource

评论