前言:
眼前姐妹们对“java反射获取所有属性值”大致比较讲究,咱们都想要了解一些“java反射获取所有属性值”的相关内容。那么小编在网上搜集了一些关于“java反射获取所有属性值””的相关内容,希望姐妹们能喜欢,咱们一起来了解一下吧!简单的通过动态属性名获取属性值
一个简单的JAVA对象
public class platformBean { private String platName1; private String platLink1; private String platName2; private String platLink2; private String platName3; private String platLink3; private String platName4; private String platLink4; private List<tempPlat> listPlat;}
public class tempPlat { private String platName; private String platLink;}
package com.lovo.test;import java.lang.reflect.Field;import java.util.ArrayList;import java.util.List;import org.apache.commons.lang.StringUtils;import com.lovo.beans.platformBean;import com.lovo.beans.tempPlat;public class reflexTest { public static Object getValeByReflex(String key,Object obj) { //获取对象文件数组 Field[] fieldes = obj.getClass().getDeclaredFields(); for (Field field : fieldes) { //设置权限 field.setAccessible(true); //field.getName() 获取属性名 if(key.equals(field.getName())) { try { //获取属性值 return field.get(obj); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } } return null; } public static void main(String[] args) { platformBean bean = new platformBean("平台1", "连接1", "平台2", "连接2", null, null, null, null); List<tempPlat> platList = new ArrayList<tempPlat>(); for(int i=1;i<5;i++) { String plat ="platName"+i; String link ="platLink"+i; plat = (String) getValeByReflex(plat, bean); link= (String) getValeByReflex(link, bean); if(StringUtils.isNotEmpty(plat)&&StringUtils.isNotEmpty(link)) { tempPlat temp = new tempPlat(); temp.setPlatName(plat); temp.setPlatLink(link); platList.add(temp); } } bean.setListPlat(platList); System.out.println(bean); }}
版权声明:
本站文章均来自互联网搜集,如有侵犯您的权益,请联系我们删除,谢谢。
标签: #java反射获取所有属性值