Java获取实体类所有字段属性的实现方式

realnode.png vps-under-title.png 科学上网教程 | 机场推荐 | 云深不知处(机场)

如果想获取Java中某个实体类的所有属性并遍历各个属性,可以通过如下方式:

1.通过反射来获取

可以通过Java的反射机制来获取一个POJO的所有属性名称和属性值,如果获取的是private的属性可以使用getDeclaredFields()方法;如果仅列出公共属性,可以使用getFields()方法:

IesInOutOnhandEngMap engMap = inOutOnhandEngMaps.get(i);
Field[] fields = engMap.getClass().getDeclaredFields();
for (int j = 0; j < fields.length; j++) {
    Field field = fields[j];
    field.setAccessible(true);
    System.out.println("成员属性:" + field.getName() + " 成员属性修饰符: "+field.getModifiers() + " 成员属性值: " + field.get(engMap));
}

注意:对于private属性,需要使用setAccessible(true)才能获取到。

2.通过Fastjson转换为Map来获取

IesInOutOnhandEngMap engMap = inOutOnhandEngMaps.get(i);
String jsonStr = JSON.toJSONString(engMap);
Map<String, Object> engMapMap = (Map) JSON.parseObject(jsonStr);

参考:

  1. How can use reflection to get the property names and values from a POJO?
赞(0)
未经允许禁止转载:优米格 » Java获取实体类所有字段属性的实现方式

评论 抢沙发

合作&反馈&投稿

商务合作、问题反馈、投稿,欢迎联系

广告合作侵权联系

登录

找回密码

注册

Ads Blocker Image Powered by Code Help Pro

检测到广告已被屏蔽

尊敬的优米格用户,

您好,系统检测到您使用了广告屏蔽组件。本网站并不包含任何侵入性广告,如果本站能给您一点帮助,还请将本站加入拦截白名单,这是我们仅有的收入来源!

网站的持续运作和改进,需要您的慷概帮助,感谢您的支持。

此致,
优米格 团队