최종 특성의 스프링 특성 주입 @Value - Java
최종 특성에 대한 특성 파일의 스프링 주입에 대한 간단한 질문입니다.
파일 경로를 저장할 속성 파일이 있습니다.일반적으로 속성 파일을 사용할 때는 다음과 같은 방법을 사용하여 클래스 속성을 설정합니다.
private @Value("#{someProps['prop.field']}") String someAttrib ;
그럼 내 안에서spring.xml
저는 다음과 같은 것을 원합니다.
<util:properties id="someProps"
location="classpath:/META-INF/properties/somePropFile.properties" />
이것은 잘 작동하고, 간단하며, 코드를 멋지고 깔끔하게 만듭니다.하지만 속성 값을 최종 클래스 속성에 삽입할 때 가장 깔끔한 패턴이 무엇인지 잘 모르겠습니다.
분명히 다음과 같은 것이 있습니다.
private static final @Value("#{fileProps['dict.english']}") String DICT_PATH;
작동하지 않습니다.다른 방법이 없나요?
최종 필드에 값을 주입할 수 있는 유일한 방법은 생성자 주입입니다.다른 모든 것들은 스프링 쪽에서 끔찍한 해킹이 될 것입니다.
예를 찾는다면 다음과 같습니다.
public class Test {
private final String value;
public Test(@Value("${some.value}") String value){
this.value=value;
System.out.println(this.value);
}
}
언급URL : https://stackoverflow.com/questions/7130425/spring-property-injection-in-a-final-attribute-value-java
'programing' 카테고리의 다른 글
ODBC를 통해 MariaDB에서 액세스할 때 VBA(자동 재링크 테이블) (0) | 2023.08.15 |
---|---|
경로를 지정하여 워크북을 여는 방법 (0) | 2023.08.15 |
iOS Swift에서 원을 그리려면 어떻게 해야 합니까? (0) | 2023.08.15 |
Java EE에 대한 RESTful 인증 (0) | 2023.08.15 |
단추를 클릭할 때 jQuery를 사용하여 오디오 파일 재생 (0) | 2023.08.15 |