`

Map和Bean的相互转换

    博客分类:
  • J2SE
 
阅读更多

 不多说了,直接上代码,以下内容实现限制,javaBean必须在一个单独的文件中,并且Bean要为public的。【这里需要依赖apache的commons-beanutils-1.7.0.jar】

转换类:

 

import java.lang.reflect.InvocationTargetException;
import java.util.Map;

import org.apache.commons.beanutils.BeanUtils;

public class test {
	
	
	public static void main(String[] args) {
		Person person1=new Person();
		person1.setName("name1");
		person1.setSex("sex1");
		Map<String, String> map=null;
		try {
			map = BeanUtils.describe(person1);
			
	//=============Bean转换成Map=======================//
			System.out.println(map.size()+">>>>>>>>>>>");
		} catch (IllegalAccessException e) {
			e.printStackTrace();
		} catch (InvocationTargetException e) {
			e.printStackTrace();
		} catch (NoSuchMethodException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		Person person=test.map2Bean(map, Person.class);
		System.out.println(person.getName());
	}

	/**
	 * 
	 * 
	 * Map转换层Bean,使用泛型免去了类型转换的麻烦。
	 * @param <T>
	 * @param map  
	 * @param class1
	 * @return
	 */
	public static <T> T map2Bean(Map<String, String> map, Class<T> class1) {
		T bean = null;
		try {
			bean = class1.newInstance();
			BeanUtils.populate(bean, map);
		} catch (InstantiationException e) {
			e.printStackTrace();
		} catch (IllegalAccessException e) {
			e.printStackTrace();
		} catch (InvocationTargetException e) {
			e.printStackTrace();
		}
		return bean;
	}
}

 

目标转换Bean类。

 

public class Person {

	public Person() {
	}

	private String name;
	private String sex;

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}
}

 

 

 

分享到:
评论

相关推荐

    map 和 bean 之间的转换

    map 和 bean 之间的转换,可以利用反射的原理实现

    bean和map之间转换的帮助类

    主要实现bean和map之间的相互转换,主要提供两个方法beanToMap将bean转换成Map 和mapToBean 将Map转换成bean 每次下载都没有积分,不差积分的大神赞助点呗 写了这一小段代码,供新手学习,大神就别拍砖了 身板弱扛...

    Java Bean对象和Map相互转换.zip

    在Java编程中,Java Bean对象和Map之间的转换是常见的数据操作。这主要涉及到对象属性与键值对之间的映射,方便数据的存储、传递和处理。在这个主题中,我们将深入探讨如何使用Fastjson和BeanMap两个库来实现这种...

    xml和java bean互相转换工具包(简单易用)

    xml 与 bean 互相转换 工具类 1、bean类的属性需要遵守BEAN规范,否则 无法 读存BEAN值。 2、bean类的属性如果 是集合 只支持数组以及List、Map、Set。 3、bean类属性(boolean除外)前面两个字母要么全部小写,要么...

    map与Javabean相互转换实例

    本文将深入探讨如何通过反射机制实现`Map`和`JavaBean`的相互转换。 首先,我们要理解`JavaBean`的基本概念。`JavaBean`是符合JavaBeans规范的类,它通常具有公共的无参构造器、getter和setter方法以及私有的属性,...

    java中实现map与对象相互转换的几种实现

    Java中实现Map与对象相互转换的几种实现 Java中实现Map与对象相互转换是许多开发者经常遇到的问题,本文将介绍五种实现Map与对象相互转换的方法,每种方法都将通过示例代码进行详细的介绍。 方法一:使用org....

    java实现Object和Map之间的转换3种方式

    Java 中,Object 和 Map 是 two kinds of data types 经常需要相互转换的数据类型。以下将介绍 Java 实现 Object 和 Map 之间的转换的 3 种方式。 方式一:使用 Commons BeanUtils 利用 Commons BeanUtils 库可以...

    json与bean,array,list,map,简单类型之间的封装、解析

    本主题主要探讨的是如何使用Gson库处理JSON数据与Java中的Bean、Array、List、Map以及简单类型的相互转换。 首先,我们来看JSON与Java Bean之间的转换。Java Bean是一种具有特定属性和方法的对象,它们通常用来封装...

    Javabean和map相互转化方法代码示例

    Javabean和map相互转化方法代码示例 在 Java 开发中,经常需要将 JavaBean 对象和 Map 对象相互转换。例如,在导入数据时,可能需要将 Map 对象转换为 JavaBean 对象,以便更方便地处理数据。本文将介绍 JavaBean ...

    bean,json工具类

    在Java开发中,Bean对象和JSON数据的相互转换是非常常见的操作。Bean对象是Java编程中的一个核心概念,它代表了具有特定属性和方法的对象,通常用于数据存储和传输。而JSON(JavaScript Object Notation)是一种轻量...

    浅谈对象与Map相互转化

    浅谈对象与Map相互转化 在 Java 开发中,对象与 Map 的相互转换是非常常见的需求。例如,在 Web 项目中,我们需要将 Java 对象转换为 JSON 数据,以便于前端 JavaScript 代码对其进行处理。又或者,在数据处理时,...

    java操作mongodb时,对象bean和DBObject相互转换的方法(推荐)

    在Java中操作MongoDB数据库时,常常需要将Java对象(对象Bean)与MongoDB的数据表示对象DBObject进行相互转换。这主要是因为MongoDB的驱动程序使用DBObject来存储和检索数据,而我们通常会用面向对象的方式来定义和...

    jaxb xml 转map

    在Java世界中,JAXB(Java Architecture for XML Binding)是一个标准的API,用于将XML文档与Java对象之间进行互相转换。这个过程被称为对象绑定。在处理XML数据时,JAXB提供了一种方便的方式,让我们可以将XML数据...

    json转换bean

    本文将深入探讨如何使用JSON-lib库实现JSON与Java Bean、Map、List等数据结构之间的相互转换。 #### JSON-lib简介及安装 JSON-lib是早期非常流行的用于处理JSON的Java库之一。它提供了强大的功能,能够将JSON字符...

    Java编码辅助工具Mapstruct用法详解

    Java编码辅助工具Mapstruct用法详解 Mapstruct是一个Java编码辅助工具,主要用于简化Java Bean之间的...Mapstruct是一个非常实用的Java编码辅助工具,能够简洁方便地完成Bean之间的转换工作,提高开发效率和代码质量。

    复制bean的开源工具Dozer

    此外,Dozer还支持双向映射,即两个对象间的相互转换。 在Spring框架中集成Dozer,可以通过Spring的Bean工厂自动管理Dozer的生命周期,例如通过`DozerBeanMapper`类创建`Mapper`实例,并在Spring配置文件中声明为...

    免费开源!!生成类型安全 bean 映射器的注释处理器

    MapStruct 是一个 Java注释处理器,用于为 Java bean 类生成类型安全且高性能的映射器。它使您免于手动编写映射代码,这是一项乏味且容易出错的任务。生成器带有合理的默认值和许多内置类型转换,但在配置或实现特殊...

    Java_HomeWork:java 作业

    - &gt; bean 的相互转化 TODO map 到 bean的复制,支持对象嵌套的复制,暂不支持带有列表的复制 bean 到 map 的复制,同上 bean 到 bean 的复制,相同属性名称的就能复制 完成带有列表的复制 map 到 json 的转化 ...

    对象拷贝-优雅的解决方案Mapstruct.docx

    MapStruct 是一种类型安全的 bean 映射类生成 Java 注释处理器,它简化了对象间属性的映射过程。开发者只需定义一个映射接口并声明所需的映射方法,在编译过程中 MapStruct 将自动为该接口生成实现类。这种机制避免...

Global site tag (gtag.js) - Google Analytics