codememo

그루비와 함께 @값 스프링 주석 사용

tipmemo 2023. 9. 5. 20:30
반응형

그루비와 함께 @값 스프링 주석 사용

저는 부동산 가치를 자동 배선하는 그루비 클래스가 있습니다.

예:

public @Value("${valueA}" ) String valueA;

내 응용프로그램 컨텍스트에서 속성 자리 표시자 추가

<context:property-placeholder location="classpath:spring/app.properties" />

app.properties에 "value"에 대한 값이 설정되어 있습니다.따라서 이론적으로 이것은 런타임에 내 클래스의 문자열 값 A를 채워야 합니다.

이 설정은 Java 클래스를 사용하는 경우에는 완벽하게 작동하지만 groovy 클래스를 사용하는 경우에는 작동하지 않습니다.

컴파일 오류가 발생함:

오류: '$값이 필요합니다.A'는 java.lang 형식의 인라인 상수입니다.@org.springframework의 문자열입니다.콩.공장.주석.가치
오류: 'value' 특성에는 'java.lang' 유형이 있어야 합니다.String'; 그러나 'java.lang' 유형을 찾았습니다.@org.springframework의 '개체'입니다.콩.공장.주석.가치

groovy 클래스를 사용할 때 위 구문이 맞는지, 실행 시 @Value 매개 변수를 자동 배선하기 위한 올바른 구문은 무엇인지 알고 싶습니다.

작은 따옴표를 사용합니다.

public @Value('${valueA}') String valueA

$를 사용하면 Groovy가 주석 인수를 GSring으로 해석하므로 컴파일 오류가 발생합니다.\$를 이스케이프하거나 단일 따옴표를 사용할 수 있습니다.

언급URL : https://stackoverflow.com/questions/5648398/using-value-spring-annotation-with-groovy

반응형