java获取实体的字段、属性、字段值、注解的值

public void test001() throws IllegalAccessException, NoSuchMethodException, InvocationTargetException, NoSuchFieldException {
Empl empl = new Empl();
empl.setId(1);
empl.setEmplCode(“2021001”);
empl.setEmplName(“中科大”);
empl.setAge(20);
/java.beans.PropertyDescriptor[name=emplName;
propertyType=class java.lang.String;
readMethod=public java.lang.String com.example.entity.Empl.getEmplName();
writeMethod=public void com.example.entity.Empl.setEmplName(java.lang.String)]
/
PropertyDescriptor origDescriptors[] = PropertyUtils.getPropertyDescriptors(empl);
for (PropertyDescriptor p:origDescriptors) {
String name = p.getName();
if(“class”.equalsIgnoreCase(name)&&“class java.lang.Class”.equalsIgnoreCase(p.getPropertyType().toString())){
continue;
}
System.out.println(p.toString());
System.out.println("=");
System.out.println(name);
System.out.println(p.getPropertyType().toString());
//字段对应的值
Object simpleProperty = PropertyUtils.getSimpleProperty(empl, p.getName());
System.out.println("=获取字段对应的值="+simpleProperty+"
=");
//通过反射获取注解(父类属性无法获取)
Field declaredField = empl.getClass().getDeclaredField(name);
System.out.println(JSON.toJSONString(declaredField));
QueryType queryType = declaredField.getAnnotation(QueryType.class);
if(queryType != null){
System.out.println("----------------");
System.out.println(name);
System.out.println(queryType.orderBy());
System.out.println("----------------");
}
System.out.println("
==========");
}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

兴趣互联

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值