にWEB-INFディレクトリからファイルを、私はプロパティを読み取るしようとしているエラーが私のJavaサービスでは春
@Configuration
@ComponentScan(basePackages = { "com.site.xxx.*" })
@PropertySource("classpath:application.properties")
@Service("someService")
public class SomeService {
@Autowired
private Environment env;
...
}
以下のようにファイルとそれから、私のいずれかの方法で、私は
を行いますString closeDate = env.getProperty("close.date");
解決策として2つの問題があります。
1>これは、application.propertiesファイルがクラスパスにある場合、ファイルを読み込む方法で機能します。私はそれをsrc/main/resourcesの下に置き、変更を配備した後にファイルを読み込みます。このプロパティファイル内の日付を変更すると、コードがコンパイルされたときに最初に入力された日付が表示されます。読み込み部分は動作しますが、ファイルの内容を変更しても変更されません。
2>私は次の行
@PropertySource("classpath:WEB-INF/application.properties")
の内容を変更し、私は私のWEB-INFディレクトリの下にファイルを配置した場合、ファイルが存在しているにもかかわらず、それはファイルが見つかりませんでしたと言います。
私は仕事には2番を好むでしょうが、それが動作しない(私は思っていません)方法がなければ、プロパティファイルのように動作する限り#1で作業できます。
オプション(1)を使用して、プロパティを変更してサーバーを再起動すると正常に動作しますか? – developer
私はそれを試していない。サーバーが値を上書きするかどうかはわかりませんか? – p0tta
いいえそれは上書きされません – developer