私のアプリケーション プロパティの多くは、リポジトリ経由で注入したいデータベースによって提供されます。これは春でできるのだろうか。誰かが解決策を提案できれば幸いです。私が考えているコードは、これに似ています:
@Component
public class ExampleService implements Service {
private PlatformSetting setting1;
@Required
@Qualifier("setting1")
public void setSetting1(PlatformSetting setting1) {
this.setting1 = setting1;
}
public String getMessage() {
return "Hello world!" + setting1.getValue();
}
}
@Repository
public class PlatformSettingRepository {
private HashMap<String, PlatformSetting> settings;
{
settings = new HashMap<String, PlatformSetting>();
settings.put("setting1", new PlatformSetting("bla1"));
settings.put("setting2", new PlatformSetting("bla2"));
}
@Bean
public PlatformSetting findSetting(@Qualifier String qual) {
return settings.get(qual);
}
}
PlatformSettingRepositoy をサービスに挿入して検索できることはわかっています。しかし、呼び出し時にこれらのルックアップを行いたくありません。Spring コンテナーが起動時にそれらを実行するようにします。