java获取实体类的属性名和属性值

Field是什么?

Field是一个类,位于java.lang.reflect包下。在Java反射中Field类描述的是类的属性信息,功能包括:

  • 获取当前对象的成员变量的类型
  • 对成员变量重新设值

Field常用方法

getType(): 获取属性声明时类型对象(返回class对象)

getGenericType() : 返回属性声的Type类型

getName() : 获取属性声明时名字

getAnnotations() : 获得这个属性上所有的注释

getModifiers() : 获取属性的修饰

isEnumConstant() : 判断这个属性是否是枚举类

isSynthetic() : 判断这个属性是否是 复合类

get(Object obj) : 取得obj对象这个Field上的值

set(Object obj, Object value) : 向obj对象的这个Field设置新值value

Field获取实体类的属性名和属性值

实现步骤

  1. 获取实体类 返回的是一个数组 数组的数据就是实体类中的字段
  2. 添加setAccessible()因为的字段是用private修饰的
  3. 输出属性名和属性值
 User user = new User();
 //获取实体类 返回的是一个数组 数组的数据就是实体类中的字段
 Field[] fields = user.getClass().getDeclaredFields();
    for (int i = 0; i < fields.length; i++) {
      //有的字段是用private修饰的 将他设置为可读
      fields[i].setAccessible(true);
      try {
        // 输出属性名和属性值
        System.out.println("属性名"+fields[i].getName()+"-----属性值"+fields[i].get(user));
        catch (IllegalAccessException e) {
           e.printStackTrace();
        }
    }

输出结果

在这里插入图片描述

梦想也许在今天无法实现,但重要的是,它在你心里。重要的是,你一直在努力,加油!!!


版权声明:本文为fuzhuangzhuang原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。