在Spring Boot中配置數(shù)據(jù)源有以下幾種方式:
1. 使用默認(rèn)的數(shù)據(jù)源配置:Spring Boot提供了默認(rèn)的數(shù)據(jù)源配置,只需要在application.properties或application.yml文件中配置相關(guān)屬性即可。例如,在application.properties文件中配置HikariCP數(shù)據(jù)源:
```
spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=username
spring.datasource.password=password
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
```
2. 自定義數(shù)據(jù)源:可以通過(guò)創(chuàng)建一個(gè)@Configuration類(lèi)來(lái)自定義數(shù)據(jù)源配置。在這個(gè)類(lèi)中,使用@Bean注解創(chuàng)建一個(gè)DataSource對(duì)象,并設(shè)置相關(guān)屬性。例如,使用HikariCP數(shù)據(jù)源:
```java
@Configuration
public class DataSourceConfig {
@Value("${spring.datasource.url}")
private String url;
@Value("${spring.datasource.username}")
private String username;
@Value("${spring.datasource.password}")
private String password;
@Value("${spring.datasource.driver-class-name}")
private String driverClassName;
@Bean
public DataSource dataSource() {
HikariConfig config = new HikariConfig();
config.setJdbcUrl(url);
config.setUsername(username);
config.setPassword(password);
config.setDriverClassName(driverClassName);
return new HikariDataSource(config);
}
}
```
3. 使用JNDI數(shù)據(jù)源:可以將數(shù)據(jù)源配置到應(yīng)用服務(wù)器的JNDI上下文中,然后在Spring Boot應(yīng)用中通過(guò)注入`javax.sql.DataSource`對(duì)象來(lái)使用。例如,Tomcat服務(wù)器的JNDI配置:
```java
@Configuration
public class DataSourceConfig {
@Resource
private DataSource dataSource;
// ...
}
```
需要注意的是,根據(jù)不同的數(shù)據(jù)庫(kù)和連接池,可能需要引入相應(yīng)的依賴。