Java maven 웹 애플리케이션을 작성했습니다. 이제 내 문제는 리소스 번들 또는 속성 클래스를 사용하여 속성 파일에 액세스해야한다는 것입니다. 하지만이 속성 파일은 webapp/resources 폴더에 있습니다. 즉, js 및 css 파일과 같은 디렉토리에 있습니다.빌드 경로에없는 java의 액세스 특성 파일
나는이 유틸리티 방법이 있지만 필요한 경우 내가 새로 작성할 수 있습니다
public static ResourceBundle getBundle(String baseName, String absolutePath) {
File file = new File(absolutePath);
ResourceBundle bundle = null;
try {
URL[] urls = { file.toURI().toURL() };
ClassLoader loader = Thread.currentThread().getContextClassLoader();
bundle = ResourceBundle.getBundle(baseName, Locale.getDefault(), loader);
} catch (MalformedURLException e) {
}
return bundle;
}
내 프로젝트 구조 :
-project
-------src
--------main
---------java
---------resources
---------webapp
----------resources
-----------app.properties
-----------script.js
그러나 어떤 서블릿에서도 사용하지 않습니다. 그것은 간단한 자바 클래스입니다. –
그러나 클래스는 웹 응용 프로그램에서 사용됩니까? 그런 다음 ServletContext를 매개 변수로 메소드에 전달할 수 있습니다. 또는 ResourceBundle이 필요한 곳에서 ServletContext를 사용하고 URL을 메소드에 전달하십시오. 이것은 obvisouly 유틸리티 메서드의 서명을 변경해야합니다. – NilsH
나는 그것을 일정하게하려고 노력했다. 이처럼 .. public static final ResourceBundle MIME_TYPES = SVNUtil.getMimeTypes(); –