Java反射获取实体类的名称以及set值


		Class clazz = R1023106103.class;
		Field[] field = clazz.getDeclaredFields();//获取属性数组
		R1023106103 pc = (R1023106103) clazz.newInstance();// 创建一个实例
		for (Field field2 : field) {
			field2.setAccessible(true);//对private 以及 final 标识的字段附访问权限。否则没有办法获取private 中的属性。
			String fieldName = field2.getName();//获取属性名称
			Class cla = field2.getType();//获取属性类型
			String type = cla.getTypeName();
			type = type.substring(type.lastIndexOf(".")+1,type.length());
			//判断只是参考,下面的set与get才是真正的方法
			if(!fieldName.equals("serialVersionUID")&&!fieldName.equals("messageTypeId")){
				System.out.println(fieldName+"~~~~~~~~~"+type+"----"+field2.get(pc));
				if(type.equals("long")||type.equals("Long")){
					field2.set(pc, 1L);
				}else if(type.equals("double")||type.equals("Double")){
					field2.set(pc, 0.26);
				}else if(type.equals("Short")){
					field2.set(pc, 1);
				}else{
					field2.set(pc, "1");
				}
				System.out.println(fieldName+"~~~~~~~~~"+type+"----"+field2.get(pc));
			}
		}
		System.err.println(pc.getFilmThickMaxDif());
	
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值