java如何改注释_关于Java:更改字符串值的注释
在spring或java中是否有注釋可以轉(zhuǎn)換給定的字符串?
例如,Spring具有注釋@Value(" some string")。 如果我想為該字符串分配一個(gè)轉(zhuǎn)換后的值,而不是向參數(shù)/實(shí)例變量分配"某些字符串"怎么辦? 假設(shè)字符串為" foo"。 每次看到此注釋時(shí),我都希望返回的字符串是" bar:foo"而不是foo。 我想要的是能夠在參數(shù)或?qū)嵗兞可戏胖米⑨?#xff0c;并使該轉(zhuǎn)換自動(dòng)發(fā)生。 也許甚至注釋也需要一個(gè)類和字符串,以使該類充當(dāng)給定字符串的轉(zhuǎn)換器。
在Spring或Java中是否有注釋可以做到這一點(diǎn)?如果沒有,那么實(shí)現(xiàn)這種事情的最佳方法是什么?
謝謝
勞倫
我沒有這個(gè)問題...也許您可以提供一些概述您的要求的偽代碼?
您可以在@Value批注內(nèi)使用Spring Expression Language。
這是將其用于靜態(tài)方法的方式:
@Value("#{T(fully.qualified.package.name.to.class).getFooString()}")
public void setBar(String value){
this.bar = value;
}
如果您之前有一個(gè)bean定義,則可以簡單地使用
@Value("#{bean.method()}")或@Value("#{bean.property}")
Spring的@Value注釋可用于使用Spring表達(dá)式語言為屬性分配常量以外的值。 例如,從屬性文件讀取的值。 如果它只是分配一個(gè)常量,則最好使用private String foo ="bar";。
因此,您可以使用它從某些配置文件或系統(tǒng)屬性中獲取所需的值。
如果您要對字段應(yīng)用某種轉(zhuǎn)換算法,那么我真的看不到使用注釋的意義。 只需調(diào)用Java方法:
@Value("foo") // or some EL expression which evaluates to"foo"
public void setBar(String value) {
this.bar = someStringTransformer.transform(value);
}
這看起來很容易閱讀,測試和維護(hù)。
總結(jié)
以上是生活随笔為你收集整理的java如何改注释_关于Java:更改字符串值的注释的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 蚂蚁庄园 php源码,求一个基于Auto
- 下一篇: java float f1=0.5_Ja