簡體   English   中英

在Groovy中使用@Value Spring Annotation

[英]Using @Value Spring Annotation with Groovy

我有一個groovy課程,我想在一個屬性值自動裝配。

例如:

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

在我的應用程序上下文中添加了property-placeholder

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

app.properties具有為“valueA”設置的值,因此理論上這應該在運行時填充我的類中的String valueA。

如果我使用java類,這個設置工作正常,但如果我使用groovy類則不行。

我收到編譯錯誤:

錯誤:預期'$ valueA'是@ org.springframework.beans.factory.annotation.Value中java.lang.String類型的內聯常量
錯誤:屬性'value'的類型應為'java.lang.String'; 但在@ org.springframework.beans.factory.annotation.Value中找到了'java.lang.Object'類型

我只是想知道在使用groovy類時上述語法是否正確,如果不是,那么在運行時自動裝配@Value參數的正確語法是什么。

使用單引號,即。

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

因為使用$導致Groovy將注釋參數解釋為GString,所以會出現編譯錯誤。 你可以逃脫\\ $或使用單引號。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM