java获取对象属性类型、属性名称、属性值
来源:互联网 发布:vue.js调试工具 编辑:程序博客网 时间:2024/06/06 05:15
/** * 根据属性名获取属性值 * */ private Object getFieldValueByName(String fieldName, Object o) { try { String firstLetter = fieldName.substring(0, 1).toUpperCase(); String getter = "get" + firstLetter + fieldName.substring(1); Method method = o.getClass().getMethod(getter, new Class[] {}); Object value = method.invoke(o, new Object[] {}); return value; } catch (Exception e) { log.error(e.getMessage(),e); return null; } } /** * 获取属性名数组 * */ private String[] getFiledName(Object o){ Field[] fields=o.getClass().getDeclaredFields(); String[] fieldNames=new String[fields.length]; for(int i=0;i<fields.length;i++){ System.out.println(fields[i].getType()); fieldNames[i]=fields[i].getName(); } return fieldNames; } /** * 获取属性类型(type),属性名(name),属性值(value)的map组成的list * */ private List getFiledsInfo(Object o){ Field[] fields=o.getClass().getDeclaredFields(); String[] fieldNames=new String[fields.length]; List list = new ArrayList(); Map infoMap=null; for(int i=0;i<fields.length;i++){ infoMap = new HashMap(); infoMap.put("type", fields[i].getType().toString()); infoMap.put("name", fields[i].getName()); infoMap.put("value", getFieldValueByName(fields[i].getName(), o)); list.add(infoMap); } return list; } /** * 获取对象的所有属性值,返回一个对象数组 * */ public Object[] getFiledValues(Object o){ String[] fieldNames=this.getFiledName(o); Object[] value=new Object[fieldNames.length]; for(int i=0;i<fieldNames.length;i++){ value[i]=this.getFieldValueByName(fieldNames[i], o); } return value; }
阅读全文
0 0
- java获取对象属性类型、属性名称、属性值
- java获取对象属性类型、属性名称、属性值
- java获取对象属性类型、属性名称、属性值 .
- java获取对象属性类型、属性名称、属性值
- java获取对象属性类型、属性名称、属性值
- java获取对象属性类型、属性名称、属性值
- java获取对象属性类型、属性名称、属性值
- java获取对象属性类型、属性名称、属性值
- java获取对象属性类型、属性名称、属性值
- java获取对象属性类型、属性名称、属性值
- java获取对象属性类型、属性名称、属性值
- java获取对象属性类型、属性名称、属性值
- java获取对象属性类型、属性名称、属性值
- java获取对象属性类型、属性名称、属性值
- java获取对象属性类型、属性名称、属性值、方法名称
- java获取Object属性类型、属性名称、属性值
- 获取文件图标,类型名称,属性 SHGetFileInfo
- 获取class中属性名称及属性类型
- xgboost学习
- php、nginx、mysql的开机启动
- java23三种设计模式之-创建型模式
- JAVA串口编程
- 常见问题
- java获取对象属性类型、属性名称、属性值
- 使用Java实现简单串口通信
- MySQL用正则表达式查询判断一个字段的值是否是数字
- LeetCode 78. Subsets 解题报告
- Java 并发专题 : Timer的缺陷 用ScheduledExecutorService替代
- .net reactor使用教程(三)——.net reactor应用场景
- Python在Windows cmd中的清屏命令
- PHP技术总结
- lua加载函数require和dofile