java对象转换map
来源:互联网 发布:java表格 插件 编辑:程序博客网 时间:2024/05/06 06:08
- 背景介绍
- 原理说明
- 反射概念
- 功能作用
- 实现方式
- 方法介绍
- 实例展示
- 对象转MAP
背景介绍
今天在项目研发的过程中遇到这样一个需求,在一个统一处理类的入口要将所有后面处理流程需要用到的值统一塞进上下文的MAP对象中,这其中就包括了一持久层的DO对象。
如果对于对象进行逐个遍历是可以实现这个需求,但代码量比较大,所以一直在寻求一种比较合理的处理方式。后来发现可以通过反射的方式实现这个功能。
原理说明
反射概念
反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;
对于任意一个对象,都能够调用它的任意一个方法和属性;
这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。
功能作用
在运行时可以动态获取一个对象属于哪个类
在运行时可以动态创建一个类的对象
在运行时可以获取类的属性和方法
在运行时可以调用对象的任何方法
可以实现动态代理
实现方式
- 通过Object类的getClass方法
Class cla = obj.getClass
- 通过对象实例方法获取对象
Class cla = String.class
- 通过Class.forName()方法
Class cla = Class.forName(xxx.xxx.Student)
方法介绍
实例展示
参考实例 反射实例链接
对象转MAP
- 创建测试对象
package source.reflect;public class TestReflect { private String no; private String name; private int age; public TestReflect(String no, String name, int age) { super(); this.no = no; this.name = name; this.age = age; } public String getNo() { return no; } public void setNo(String no) { this.no = no; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; }}
- 通过反射将对象转换为Map
package source.reflect;import java.lang.reflect.Field;import java.util.HashMap;import java.util.Map;public class TestObjToMap { public static Map<String, Object> convertObjToMap(Object obj) throws Exception{ Map<String, Object> map = new HashMap<String, Object>(); Field[] fields = obj.getClass().getDeclaredFields(); for(int i = 0; i < fields.length; i++){ Field field = obj.getClass().getDeclaredField(fields[i].getName()); field.setAccessible(true); Object value = field.get(obj); map.put(fields[i].getName(), value); } return map; } public static void main(String[] args) throws Exception { TestReflect testReflect = new TestReflect("1", "test", 20); Map<String, Object> map = convertObjToMap(testReflect); System.out.println(map); }}
阅读全文
0 0
- java对象转换map
- java对象与map对象相互转换
- Java对象与Map的转换
- Java对象与Map的转换
- java 对象和map的相互转换
- Java对象与Map的转换
- 将map转换为java对象
- Java Object与Map对象相互转换
- Java对象转换(Map转换Object或者反转)
- java如何将Bean对象转换成Map对象?
- Java关于实体对象和Map对象之间的转换
- 对象转换为Map
- java实现对象转换为map、xml字符串转化为map、map转化为xml字符串
- 利用java反射机制将Map转换为Bean对象
- java 使用反射转换对象 Object to Map
- java中Map等对象转换为json
- java中Map等对象转换为json
- java中将数组、对象、Map、List转换成JSON数据
- Linux三剑客应用小结---grep、sed、awk
- Linux驱动之Nand Flash原理及硬件操作
- 加入updatapannel后textbox无法清空的问题
- Search a 2D Matrix II
- 汤姆大叔的深入理解JavaScript读后感三(设计模式篇)
- java对象转换map
- MyEclipse如何自动生成数据库表的Java实体类
- 汤姆大叔的深入理解JavaScript读后感四(完结篇)
- 状态机
- 面试问题集锦
- 在eclipse导入了web工程,buildpath修改jre版本时报it is indirectly referenced from required .class
- 读书笔记:Hive中的集合数据类型
- EL表达式
- a letter and a number