在我的Java服務,我試圖讀取屬性文件,如下錯誤嘗試讀取性能從WEB-INF目錄下的文件在Spring
@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");
這裏有兩個問題,我可以使用這兩個問題作爲解決方案。
1>如果我的application.properties文件位於類路徑中,它將以某種方式讀取文件。我把它放在src/main/resources下面,然後在部署更改後讀取文件BUT,如果我更改了此屬性文件中的日期,它仍然顯示編譯代碼時輸入的第一個日期。所以閱讀部分的工作原理,但當我改變文件內容時它不會改變。
2>如果我更改以下行
@PropertySource("classpath:WEB-INF/application.properties")
的內容,如果我把文件我的WEB-INF目錄下,即使該文件存在,它說找不到文件。我會非常喜歡#2的工作,但如果沒有辦法,它可以工作(我不認爲),我可以使用#1,只要它的行爲像一個屬性文件。
使用選項(1),如果您更改屬性並重新啓動服務器,它工作正常嗎? – developer
我還沒試過。不確定服務器是否會覆蓋該值? – p0tta
不,它不覆蓋 – developer