gpt4 book ai didi

java - 将多个注释与参数合并

转载 作者:搜寻专家 更新时间:2023-11-01 02:20:56 27 4
gpt4 key购买 nike

我在使用多个注解时遇到问题,这些注解或多或少都表示相同的内容但针对不同的框架,我想将它们全部分组到一个自定义注解中。目前它看起来像这样:

@Column(name = "bank_account_holder_name")
@XmlElement(name = "bank_account_holder_name")
@SerializedName("bank_account_holder_name")
@ApiModelProperty(name = "bank_account_holder_name", value = "The name of the recipient bank account holder")
public String bankAccountHolderName;

如您所见,它们都重复相同的字符串,我想将它们组合起来,但我还没有找到这样做的方法。

是否完全可以这样做,或者我是否必须继续这样做或更改/创建一个新框架?

最佳答案

答案是:可能不,这是不可能的(使用“标准”java)。

你看,没有 inheritance 用于注释,更不用说“多重”继承,它允许您表达:

public @interface MultiAnnotiation extends Column, XmlElement, ...

最有可能的是,这些注释的工作方式如下:在运行时,相应的框架使用反射来检查某个对象是否具有该注释。如果它没有找到“它的”注释,则什么也不会发生。

因此您需要一种方法来“神奇地”将这些注释插入到您的类文件中。

归结为:当您编写自己的编译器并在 Java 之上发明一些东西时,您就可以做类似的事情。

在处理编译器插件附带的注释时,情况可能会有所不同(意思是:在编译时处理的注释)。也许您可以编写自己的自定义注释,然后触发相同编译时操作。

长话短说:所有这些听起来有趣,但高级,而且很可能:不会产生健壮的、具有生产值(value)的代码!

关于java - 将多个注释与参数合并,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43679586/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com