私のabc.properties
ファイルにはリストがあります
xyz=cat,dog,cow,calf
私は自分のJavaコードからそれを読みたいです。
@Value
追記してみた
@Value("${xyz}") private String[] elementToSearch;
elementToSearch[0]
しかし、印刷すると助けが得られるので、明らかに私は何か間違ったことをしています${xyz}
。
私のabc.properties
ファイルにはリストがあります
xyz=cat,dog,cow,calf
私は自分のJavaコードからそれを読みたいです。
@Value
追記してみた
@Value("${xyz}") private String[] elementToSearch;
elementToSearch[0]
しかし、印刷すると助けが得られるので、明らかに私は何か間違ったことをしています${xyz}
。
Spring フレームワークの @Value アノテーションを使用しようとしているようです。
実際、あなたは正しいことをしていると思います。PropertyPlaceHolderConfigurer を使用していない可能性はありますか?
ほとんどの場合、Spring の applicationContext.xml 構成ファイルに次のようなものを追加することでそれが行われるのを見てきました。
<!-- if you are using annotations -->
<context:annotation-config/>
<!-- if you are scanning for annotated beans -->
<context:component-scan base-package="com.example.package" />
<!-- Load override configuration from a property file. -->
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="systemPropertiesModeName" value="SYSTEM_PROPERTIES_MODE_OVERRIDE"/>
<property name="ignoreResourceNotFound" value="true"/>
<property name="locations">
<list>
<value>classpath:abc.properties</value>
<value>file:/etc/someplace/abc.properties</value>
</list>
</property>
</bean>