`

将POJO对象转成Map

    博客分类:
  • Java
阅读更多
// POJO 
package com.test;
public class Person {
  
    private Integer id;
    private String lastName;
    private String firstName;

    public String getFirstName()
    {
        return firstName;
    }

    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }

    public String getLastName() {
        return lastName;
    }

    public void setLastName(String lastName) {
        this.lastName = lastName;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }
}

//测试类

package com.test;

import java.lang.reflect.Method;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

public class Test {

 /**
  * @将POJO对象转成Map
  */

 public static Map testReflect(Object obj) {
  Map hashMap = new HashMap();
  try {
   Class c = obj.getClass();
   Method m[] = c.getDeclaredMethods();
   for (int i = 0; i < m.length; i++) {
    if (m[i].getName().indexOf("get")==0) {
      //System.out.println("方法名:"+m[i].getName());
     // System.out.println("值:"+ m[i].invoke(obj, new Object[0]));
     hashMap.put(m[i].getName(), m[i].invoke(obj, new Object[0]));
    }
   }
  } catch (Throwable e) {
   System.err.println(e);
  }
  return hashMap;
 }

 public static void main(String[] args) {

  Person p = new Person();
  p.setFirstName("张");
  p.setId(119);
  p.setLastName("三");
  Map personMap = Test.testReflect(p);
  Iterator it = personMap.entrySet().iterator();
  while (it.hasNext()) {
   Map.Entry map = (Map.Entry) it.next();
   System.out.println("方法名:" + map.getKey() + "  ,值: "+ map.getValue());
  }

 }

}



//测试结果
方法名:getLastName  ,值: 三
方法名:getId  ,值: 119
方法名:getFirstName  ,值: 张

分享到:
评论
1 楼 donald8219 2010-03-26  
学习了,受用,

相关推荐

    java Pojo转Map

    将Pojo对象转换为Map,可以简化数据处理过程,尤其是在JSP页面上展示数据时,Map的灵活性更加突出。本文将详细介绍如何实现Java中的Pojo到Map的转换,并通过具体的示例来演示这一过程。 首先,我们需要一个Pojo类,...

    POJO转Map.txt

    ### POJO转Map知识点详解 #### 一、POJO简介 在Java开发中,POJO...通过以上分析,我们可以了解到如何将POJO对象转换为Map,并理解其实现原理以及可能遇到的问题。这对于实际开发中处理数据转换任务非常有帮助。

    Eclipse中新建SpringBoot项目完成对json、pojo、map、list的请求源码

    在Eclipse中创建一个全新的Spring Boot项目,我们可以利用Spring框架的强大功能来处理JSON数据、POJO对象、Map以及List类型的请求。Spring Boot简化了Spring应用的初始搭建以及开发过程,它集成了大量的常用库,使得...

    List转换为List

    3. **复制属性到Map**:从Bean对象中获取属性值,将这些值放入Map中。键通常是属性名,值是属性值。 4. **将Map添加到新的List中**:每当创建完一个Map后,将其添加到一个新的List&lt;Map&gt;集合中。 5. **返回新的List...

    JSON与java对象转换的工具包

    此工具包提供了方便快捷的方法,可以将JSON字符串直接转换为Java的各种数据结构,如实体Bean(POJO对象)、Map、Collection以及Object数组。这大大简化了开发过程,避免了手动解析和构建JSON字符串的繁琐工作。 1. ...

    JDK1.8中文API+Json对象直转pojo类实例.rar

    在这个"JDK1.8中文API+Json对象直转pojo类实例"的压缩包中,我们主要会关注Java反射机制、Gson库以及如何将Json对象直接转换为Java的POJO(Plain Old Java Object)类。 首先,让我们详细了解一下Java反射机制。...

    利用jackson包进行json字符串与pojo类之间的转换源代码

    Jackson支持处理复杂类型,如集合、Map以及嵌套的POJO。例如,处理List类型的属性: ```java public class Container { @JsonProperty("items") private List&lt;MyPojo&gt; items; // ... } ``` 6. **异常处理*...

    数据转换为pojo类

    这个库的实现方式可能包括使用反射机制和注解来解析数据并填充POJO对象。 首先,了解如何创建一个POJO类是至关重要的。一个基本的POJO类通常包含一组public属性,每个属性对应于要解析的数据字段,以及相应的getter...

    MyBatis执行SQL并将结果映射成Java对象.docx

    MappedStatement是Executor处理SQL信息的载体,它包含了SQL语句、输入参数的映射信息(如HashMap或POJO对象)、以及输出结果的映射信息。MyBatis使用这些信息将Java对象和数据库中的数据进行双向映射,实现了ORM...

    mybatis逆向生成pojo,mapper

    MyBatis是一款强大的Java持久层框架,它...总之,MyBatis逆向生成pojo和mapper是提升开发效率的有效手段,它结合了数据库表结构和Java对象模型,使得开发者能够更加专注于业务逻辑的实现,而不是繁琐的数据访问代码。

    java处理JSON格式数据的通用类.pdf

    `getObject4JsonString()` 方法可以将 JSON 字符串转换为 Java 对象,而 `getMap4Json()` 方法可以将 JSON 字符串转换为 Map 对象。 在使用该类时,只需将 JSON 字符串作为参数传递给相应的方法,就可以将 JSON ...

    让JPA的Query查询接口返回Map对象的方法

    因此,本文将介绍让JPA的Query查询接口返回Map对象的方法。 首先,我们可以使用entityManager.createNativeQuery()来执行原生的SQL语句,并使用query.getResultList()获取查询结果。然而,query.getResultList()...

    java转换万能工具类附带jar包

    一个json相互转换的万能java类... * 将java对象转换成json字符串,并设定日期格式 * @param javaObj * @param dataFormat * @return */ /** *//** * JSON 时间解析器具 * @param datePattern * @return */

    WMS接口文档 1月3版修订版1

    接着,我们创建一个名为`ToMap`的辅助类,用于将Java对象转换成多值映射(`MultiValueMap`)。这个类包含一个`toMap()`方法,它使用`ObjectMapper`将当前对象转换为Map,并将结果存储在`LinkedMultiValueMap`中。`...

    Java对象序列化和反序列化工具Xson.zip

    1.Java POJO对象 2.基本类型:byte,short,int,long,float,double,boolean,char 3.包装类型:Byte,Short,Integer,Long,Float,Double,Boolean,Character 4.String 5.Collection 6.Map 7.Enum 8.TimeZone 9....

    反射入门小练习

    对于POJO对象,我们通常会有一些基本类型、字符串、其他POJO对象,以及`List`和`Map`类型的属性。要为这些属性设置初始值,我们需要使用`getDeclaredFields()`方法获取所有声明的字段,然后使用`setAccessible(true)...

    JSON转java类

    在Java开发中,经常需要将接收到的JSON字符串转换成Java对象,以便于操作和处理。这个“JSON转Java类”的工具正是为了解决这个问题而设计的。它能将JSON字符串自动转化为符合Java POJO(Plain Old Java Object)规范...

    java中ArrayListMapObject与Json互相转换.pdf

    - 使用Gson或Jackson等库,如Gson库的`Gson.toJson()`方法,可以将ArrayList&lt;Map&lt;Object&gt;&gt;转换成JSON字符串。该方法会遍历整个数据结构,并将其转化为JSON格式。 2. **将JSON转为ArrayList&lt;Map&lt;Object&gt;&gt;**: - ...

    josn 各种转换

    Jackson支持嵌套的JSON对象和数组,对应的Java对象可以是复杂的类结构,包括List、Map以及其他Java集合。 5. 避免无限递归 在处理包含相互引用的对象时,可能会导致无限递归。可以使用`@JsonIdentityInfo`注解解决...

    完整版 Java开发实训课程系列-SpringMVC框架技术教程 第4章 参数绑定 (共20页).pptx

    此外,还可以将POJO对象作为包装对象的一个属性,然后在Controller方法中以包装对象作为形参。 3. **集合类型绑定**:支持字符串数组、List、Map等集合类型。例如,批量操作时,可以通过多个checkbox选择项,将选中...

Global site tag (gtag.js) - Google Analytics