복붙노트

[SPRING] Annotation을 통해 Spring Bean의 File 필드 채우기

SPRING

Annotation을 통해 Spring Bean의 File 필드 채우기

다음과 같이 할 수 있습니까?

<property name="template" value="file:/some/resource/path/myTemplate.txt" />

맞춤 주석을 만들지 않고 주석을 통해 리플렉션을 통해 필드를 채우십시오. @Value로 할 수 없으므로 String에서만 작동합니다.

그렇지 않다면 Spring 빈 사용자 정의 어노테이션을 처리하고 이에 따라 빈을 초기화하는 가장 좋은 방법은 무엇입니까?

해결법

  1. ==============================

    1.필드로 리소스를 사용하십시오.

    필드로 리소스를 사용하십시오.

    @Value("file:/some/resource/path/myTemplate.txt")
    Resource template;
    

    classpath : 스타일 URI도이 방법을 사용할 수 있습니다.

    그런 다음 File을 가져와야하는 경우 template.getFile ()을 사용하십시오.

  2. ==============================

    2.질문을 이해하면 File 유형의 필드 값을 설정하려고합니까? @Value와 함께 파일 이름을 삽입 한 다음 필요시 코드에 File 객체를 만들 수 있습니까?

    질문을 이해하면 File 유형의 필드 값을 설정하려고합니까? @Value와 함께 파일 이름을 삽입 한 다음 필요시 코드에 File 객체를 만들 수 있습니까?

  3. ==============================

    3.@Value ( "$ {file : /some/resource/path/myTemplate.txt}") 리소스 템플릿;

    @Value ( "$ {file : /some/resource/path/myTemplate.txt}") 리소스 템플릿;

    깨어 줘서 고마워, 매우 upvoted 대답은 "templatePath"어떤 참조도없이 지금은 교정 약자 - 코멘트를 참조하십시오.

    @Value 리소스 사용에 대한 Javadoc 또는 공식 문서는 2011 년 초 찾기가 어려웠지만 classpath, file, url을 사용하여 @Value spel을 통해 리소스를 주입하는 방법을 찾는 것이 여전히 있습니다. SPEL 표현식, 파일 시스템 자원, @Value, @PropertyResource

  4. from https://stackoverflow.com/questions/6392406/populate-spring-beans-file-field-via-annotation by cc-by-sa and MIT license