Java如何通过反射取实体类字段取值

 更新时间:2024年07月09日 14:59:09   作者:超越呦  
这篇文章主要介绍了Java如何通过反射取实体类字段取值问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Java通过反射取实体类字段取值

public class Test {
	public static void main(String[] args) throws NoSuchFieldException, IllegalAccessException {
		GasDay gasDay = new GasDay();
		gasDay.setOutputcode("Ccccc");

		for (Field field: GasDay.class.getDeclaredFields()){
			String name = field.getName();//name就是实体类GasDay的所有字段
			
			System.out.println(String.format("r.linan.wastegas.day.%s", name));
			
			Field declaredField = GasDay.class.getDeclaredField(name);
			declaredField.setAccessible(true);

			System.out.println(String.format("name %s value %s", name, declaredField.get(gasDay)));//declaredField.get(gasDay)就是实体类GasDay中所有值
		}
	}
}

Java循环实体类 获取实体字段和字段对应的value

有的时候实体字段比较多,需要循环获取实体的字段名和字段内容,实现方法通过Field反射获取类的属性。

实现方式

需要注意的是一定要设置setAccessible为ture

public class test1 {
    public static void main(String[] args) throws IllegalAccessException {
 
        demoEntity entity=new demoEntity();
        entity.aa="1111";
        entity.bb="2222";
        entity.cc="3333";
 
        for (Field field:entity.getClass().getDeclaredFields()){
            // 一定要设置setAccessible为ture
            field.setAccessible(true);
 
            System.out.println("实体字段名:"+field.getName());
            System.out.println("实体字段值:"+field.get(entity));
        }
    }
}

输出结果:

实体类demoEntity

public class demoEntity {
    public String aa;
    public String bb;
    public String cc;
 
    public String getAa() {
        return aa;
    }
 
    public void setAa(String aa) {
        this.aa = aa;
    }
 
    public String getBb() {
        return bb;
    }
 
    public void setBb(String bb) {
        this.bb = bb;
    }
 
    public String getCc() {
        return cc;
    }
 
    public void setCc(String cc) {
        this.cc = cc;
    }
}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • SpringBoot @DS注解实现多数据源配置以及问题解决办法

    SpringBoot @DS注解实现多数据源配置以及问题解决办法

    这篇文章主要给大家介绍了关于SpringBoot @DS注解实现多数据源配置以及问题解决办法,所谓多数据源就是一个Java EE项目中采用了不同数据库实例中的多个库,或者是同一个数据库实例中的多个不同库,需要的朋友可以参考下
    2023-11-11
  • Mybatis-Plus实体类继承Model的使用小结

    Mybatis-Plus实体类继承Model的使用小结

    Mybatis-Plus实体类继承Model的使用是Mybatis-Plus中的一个重要特性,它允许开发者通过继承Model类来快速实现一些通用的功能,本文主要介绍了Mybatis-Plus实体类继承Model的使用小结,感兴趣的可以了解一下
    2024-07-07
  • springboot整合Mybatis-plus的实现

    springboot整合Mybatis-plus的实现

    这篇文章主要介绍了springboot整合Mybatis-plus的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • 猜数游戏java实现代码

    猜数游戏java实现代码

    这篇文章主要为大家详细介绍了java实现猜数游戏代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-12-12
  • Spring使用注解实现Bean的自动装配

    Spring使用注解实现Bean的自动装配

    大家好,本篇文章主要讲的是Spring使用注解实现Bean的自动装配,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-02-02
  • SpringMVC中的HttpServletRequestWrapper使用解析

    SpringMVC中的HttpServletRequestWrapper使用解析

    这篇文章主要介绍了SpringMVC中的HttpServletRequestWrapper使用解析,HttpServletRequestWrapper 采用装饰者模式对HttpServletRequest进行包装,我们可以通过继承HttpServletRequestWrapper类去重写getParameterValues,getParameter等方法,需要的朋友可以参考下
    2024-01-01
  • Java设计模式之装饰模式详解

    Java设计模式之装饰模式详解

    这篇文章主要介绍了Java设计模式之装饰模式详解,文中有非常详细的代码示例,对正在学习java的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04
  • 使用java实现telnet-client工具分享

    使用java实现telnet-client工具分享

    这篇文章主要介绍了使用java实现telnet-client工具,需要的朋友可以参考下
    2014-03-03
  • Trace 在多线程异步体系下传递流程解析

    Trace 在多线程异步体系下传递流程解析

    这篇文章主要为大家介绍了Trace 在多线程异步体系下传递流程解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • spring-mybatis与原生mybatis使用对比分析

    spring-mybatis与原生mybatis使用对比分析

    这篇文章主要介绍了spring-mybatis与原生mybatis使用对比分析,需要的朋友可以参考下
    2017-11-11

最新评论