config.properties 파일에서 설정 한 속성을 필요로하는 Spring MVC Controller 클래스가 있습니다. 나는 이미이 설정 파일을 사용하여 일부 db 속성을 설정했기 때문에이 속성을 설정하는 비슷한 방식으로이 속성에 액세스 할 수 있다고 생각했습니다. 차이점은 내 컨트롤러 클래스는 XML 파일에 주석이 달려 있지 않고 선언되어 있지 않으므로 일반적인 방법으로 속성을 설정할 수 없다는 점입니다. 나는 준비가 내 config.properties 그래서 나의 XML 파일에서 사용할 수 있습니다Annotated File에서 속성을 설정하려면 Spring XML 엔티티를 사용 하시겠습니까?
<context:property-placeholder location="/WEB-INF/config.properties" />
내가이 속성의 항목에서 내 컨트롤러 클래스에서 다음 속성을 설정하고자하는 파일 :
@Controller
public class SampleUploadController {
private String audioFilePath;
public String getAudioFilePath() {
return audioFilePath;
}
// I want this set from the properties file I've declared in my
// XML file: e.g. ${props.audioFilePath}
public void setAudioFilePath(String audioFilePath) {
this.audioFilePath = audioFilePath;
}
}
이것이 가능합니다. 그렇지 않다면 누군가가 설정 파일에서 필요한 속성을 얻는 방법을 제안 할 수 있습니까? 내 루트 WEB-INF에 있습니다. 문제는이 시점에서이 파일의 위치에 대한 참조를 얻기 위해 ServletContext에 액세스 할 수 없다는 것입니다.
감사합니다. 질문 하나,이 값을 찾는 @Value 주석은 어디에 있습니까? Spring 컨테이너가 알고있는 모든 Property-placeholders를 살펴 보는 것 뿐인가? –
나는 그렇다고 믿는다. 그것은 당신이' 를 사용하여 지정한 것과 같은 메커니즘을 사용합니다. –
skaffman