hibernate 取出实体类注解里的属性

如题这个是hibernate根据数据库自动生成的实体类中的一段代码我想取出里面每个字段@column中的namenullablelength的属性可以取出来吗?代码该怎么... 如题 这个是hibernate根据数据库自动生成的实体类中的一段代码 我想取出 里面每个字段 @column中的 name nullable length 的属性 可以取出来吗? 代码该怎么写? 展开
 我来答
zhuniadi82
推荐于2017-12-16 · TA获得超过397个赞
知道小有建树答主
回答量:205
采纳率:66%
帮助的人:116万
展开全部
你好,可以通过java的反射获取。代码如下:
public static void main(String[] args) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
try {
//TDict是实体对象
Class<TDict> c = TDict.class;
//获取对象中所有的方法
Method[] methods = c.getMethods();
//进行循环
for (Method method : methods) {
//判断方法上是否存在Column这个注解
if (method.isAnnotationPresent(Column.class)) {
//method.invoke(bus, new Object[]{});
Column col = method.getAnnotation(Column.class);
//System.out.println(col);
//下面是取值
System.out.print("方法名称:"+method.getName());
System.out.print("\tname---"+col.name());
System.out.print("\tnullable---"+col.nullable());
System.out.println("\tlength---"+col.length());
}
}
} catch (SecurityException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

需要引用
import java.lang.reflect.InvocationTargetException;
        import java.lang.reflect.Method;
        import javax.persistence.Column;
        
        测试结果:
        方法名称:getId name---id nullable---false length---255
        方法名称:getDictDescribe name---dict_describe nullable---true length---50
        方法名称:getDictType name---dict_type nullable---true length---20
        方法名称:getDictSort name---dict_sort nullable---true length---255
        方法名称:getDictRemark name---dict_remark nullable---true length---50
        方法名称:getDictCtime name---dict_ctime nullable---true length---50
        望采纳,
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式