SpringBoot でデータソースはどのように構成しますか。
Spring Boot でデータソースを設定するには、以下の方法があります。
1. デフォルトデータソース設定の使用: Spring Boot では、application.properties または application.yml ファイルに関連プロパティを設定するだけで、既定のデータソース設定が提供されています。例: application.properties ファイルに HikariCP データソースを設定する場合:
“`
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. カスタムデータソース: @Configuration クラスを作成することで、データソース設定をカスタマイズできます。このクラスでは、@Bean アノテーションを使用して DataSource オブジェクトを作成し、関連プロパティを設定します。例: HikariCP データソースを使用する場合:
“`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 データソースの使用: データソースをアプリケーションサーバーの JNDI コンテキストに設定し、Spring Boot アプリケーションでは `javax.sql.DataSource` オブジェクトを注入して使用できます。例: Tomcat サーバーの JNDI 設定:
“`java
@Configuration
public class DataSourceConfig {
@Resource
private DataSource dataSource;
// …
}
“`
異なるデータベースと接続プールの種類に応じて、対応する依存関係の追加が必要なことに注意してください。