2012-04-18 2 views
1

Spring이 컨트롤러와 동일한 패키지에서 속성 파일을 먼저 찾은 다음 속성 파일을 찾을 때까지 패키지 구조를 위로 이동시키는 Struts2와 비슷한 속성 파일 메커니즘이 Spring에 있는지 궁금합니다. 또는 재산.컨트롤러 별 Spring 3 속성 파일

컨트롤러마다 속성 파일을 정의하고 싶지만 가능하면 함께 연결하지 않아도됩니다. 속성 파일을 컨트롤러와 연관 짓는 몇 가지 규칙이 있습니까? 로켈을 확인할 때 속성 파일 해상도가 올바르게 작동해야합니다.

예를 들어, 여러 prop 파일에서 "title"이라는 속성을 정의한 경우 요청한 컨트롤러를 기반으로 JSP에서 해결할 정확한 값을 원합니다.

컨트롤러의 Model 속성에 속성 파일을 자동 배선하고 JSP에 값을 표시하는 데 성공했습니다. 또한 구성에 ResourceBundleMessageSource를 지정하고 JSP에서 값을 표시 할 수있었습니다.

+0

I18N 목적을 위해 그렇게하고 있습니까? 아니면 다른 방식입니까? – Stefan

+0

I18N을 확실히 원하지만 현재는 전체 응용 프로그램에서 고유 한 속성 키를 유지해야합니다. 그렇지 않으면로드 된 첫 번째 키가 우선합니다. 많은 특성 파일을 말할 때 Spring의 전형적인 접근 방식은 무엇입니까? – udeleng

+0

i18n이 필요한 경우 - i18n 용으로 만든 도구를 사용하십시오. http://viralpatel.net/blogs/2010/07/spring-3-mvc-internationalization-i18n-localization-tutorial-example.html – Dima

답변

0

나도 알아 ...하지만 당신이 쉽게 원하는 것을 쓰면 쉽게 작성할 수 있습니다!

Spring에는 BeanFactory/ApplicationContext에서 이와 같은 작업을 수행 할 수있는 BeanFactoryPostProcessor와 같은 것이 있습니다. 나는 BeanFactoryPostProcessor가 빌을 여기에 맞출 것이라고 생각하고있다. 클래스 패스에서 프로퍼티 파일을 찾고, 프로퍼티를 잡아서 빈에 적용함으로써 빈을 '후 처리'할 수있다.

나는 이것을 말할 것이다. 봄은 보통 비침 범성을 의미한다. 이와 같은 것을 디자인에 포함 시키려면 Spring을 사용하는 대신 pure Java로이 작업을 수행하는 방법을 생각해 볼 수 있습니다. 예를 들어, 자체 공장을 만들고이를 개별적으로 구현 및 테스트하십시오. 이 팩토리를 사용하여 비즈니스 객체를 얻도록 앱을 요구하십시오.

다른 말로 표현하면 Spring에서 할 수 있지만 항상 최선의 방법은 아닙니다. 그것은 당신의 경우에 가장 편리 할 수있는 것처럼 들리지만, 당신이 설정하고있는 곳과 세부 사항을 보지 못했습니다. 생각을위한 음식 ..