java如何动态填充注释
遗憾的是,我今天忘了带上工作时的代码。但也许这个小例子会澄清一些事情
我使用hibernate将bean映射到表
示例:
import javax.persistence.column;
….
String columnameA;
….
@Column(name="columnameA")
public String getColumname(){
return columnameA
}
….
我不想在我的源代码中硬编码columnname(“columnameA”),因为我需要在不构建整个项目的情况下切换columnname。 我想使用类似于:
@Column(name=getColumnName())
这不起作用想法是,在jndi树中的某个地方写入列名,并在启动时使用它。因此,我只需要重新启动应用程序来更改columnname
解决这个问题的唯一方法——我可以想到——是编写自己的注释,它扩展了hibernate类。有没有更简单的方法
# 1 楼答案
您可以为属性指定的唯一值是常量值,可以手动指定,也可以存储在
public static final
变量中注释不定义行为,只定义关于类、方法等的元信息。可以在注释处理器中指定行为,这些处理器读取注释并生成新的源代码或其他文件
编写注释过程超出了我的知识范围,但您可以在Sun的Annotations Processing Tool指南中找到其他信息
# 2 楼答案
使用注释无法实现这一点,但解决特定问题的方法是实现自定义^{} :
-