プロパティファイルからリストを読み取り、Springアノテーション@Valueでロードする 質問する

プロパティファイルからリストを読み取り、Springアノテーション@Valueでロードする 質問する

ファイル内に値のリストを入れたい.properties、つまり:

my.list.of.strings=ABC,CDE,EFG

そして、それを自分のクラスに直接ロードするには、次のようにします。

@Value("${my.list.of.strings}")
private List<String> myList;

私の理解では、これを行う代わりに、Spring構成ファイルにそれを記述し、Bean参照としてロードします(間違っていたら訂正してください)。

<bean name="list">
 <list>
  <value>ABC</value>
  <value>CDE</value>
  <value>EFG</value>
 </list>
</bean>

しかし、ファイルを使用してこれを行う方法はあるのでしょうか.properties?

追伸

可能であれば、カスタム コードなしでこれを実行したいと思います。

ベストアンサー1

Spring EL の使用:

@Value("#{'${my.list.of.strings}'.split(',')}") 
private List<String> myList;

プロパティ ファイルが次のように正しくロードされていると仮定します。

my.list.of.strings=ABC,CDE,EFG

おすすめ記事