完全なコードベースの構成のSpringアプリケーションがあります。そして、maven プロファイルを組み合わせて、db 接続をセットアップしようとしています。ローカル、ライブ、およびステージングの問題のいくつかのプロパティを定義しました。今、私はmavenプロファイルを制御しようとしています。すべてのプロファイルは、私の MySql db 接続パラメーターを定義します。ここに私の現在の設定:
local.properties ファイル:
mysql.username=test
mysql.password=test
mysql.databaseUrl=jdbc:mysql://localhost:3306/test
mysql.databaseDriver=com.mysql.jdbc.Driver
pom.xml
...
<profiles>
<profile>
<id>live</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<properties>
<filterFile>src/main/config/live.properties</filterFile>
</properties>
</profile>
<profile>
<id>local</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<properties>
<filterFile>src/main/config/local.properties</filterFile>
</properties>
</profile>
<profile>
<id>staging</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<filterFile>src/main/config/staging.properties</filterFile>
</properties>
</profile>
</profiles>
...
アプリケーション構成
...
@Value("${mysql.username}")
private String username;
@Bean
public DataSource dataSource() {
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setUsername(username);
..
return dataSource;
}
...
ここでの問題は、プロパティが読み込まれていないことです!