应用场景:使用Hibernate查询的时候查询结果经常会需要返回一个Map,这个时候就需要把Map转换成对应的Bean对象以适用于业务的需要。懒人就的事情就是写些工具类来实现这些操作。
package com.test;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
public class ConvertUtil {
public static void main(String[] args) {
ConvertUtil convertUtil = new ConvertUtil();
Map<String, String> map = new HashMap<String, String>();
map.put("NAME", "name1");
map.put("SEX", "sex1");
Person person1=new Person();
try {
person1 = (Person) convertUtil.convert2Bean(map, person1);
System.out.println(person1.getName());
System.out.println(person1.getSex());
} catch (Exception e) {
e.printStackTrace();
}
}
public static final String setMethodModify = "set";
public Object convert2Bean(Map<String, String> map, Object obj) {
Class class1 = obj.getClass();
Method[] methods = class1.getMethods();
for (Method method : methods) {
String methodName = method.getName();
if (methodName.startsWith(ConvertUtil.setMethodModify)) {
String propertyName = methodName.substring(3).toUpperCase(
Locale.getDefault());
String value = map.get(propertyName);
try {
method.invoke(obj, value);
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
}
}
return obj;
}
}
class 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;
}
}
分享到:
相关推荐
此方法可以实现javabean,map,json的自由转换,方便大家的的操作
将list<Map>转换成JavaBean的工具类
基本介绍使用反射将普通Javabean与map集合的相互转换实例,项目开发时编写自己的转换帮助类,更好满足开发时所需
使用Java反射机制,将给定的javaBean转化为Map数类型,以及将Map类型的数据转化为JavaBean
java Map转换成bean,利用java反射以及java和bean包将map,Object>类型集合转换成需要的javaBean
3.项目所需小工具之CommonUtils(1生成uuid,2Map转换成JavaBean) 4.项目所需小工具之JdbcUItils(1获取Connection,2事务管理) 5.项目所需小工具之TxQueryRunner(把JdbcUtils和dbUtils整合在一起) 6.多表结果集映射,...
将一个Map中的数据封装到javaBean中
一般使用springjdbc、hibernate的sql查询,库获取到的数据都是List<Map, Object>>结果集,如果我们要转化为JavaBean,则需要做一系列的map.get(),然后obj.set()。 此工程中就是解决List<Map, Object>>转化为...
javabean_map_string和json互转详细文档+例子
一直以来把数据库的表转换成Entity或DTO都是一件让人头痛的事情,既浪费时间又很繁琐,看着几十上百个表的几百上千个字段,真是一件让人很头痛的事情。 我们也想过很多办法解决这个问题,包括用MyEclipse连接...
主要给大家介绍了关于基于Java反射的map自动装配JavaBean工具类设计的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用java具有一定的参考学习价值,需要的朋友们下面来一起看看吧
Bean与MAP间互转换的工具类。 1.将一个 Map 对象转化为一个 JavaBean,可指定BEAN的类型; 2.将一个 JavaBean 对象转化为一个 HashMap;
将一个 Map对象转化为JavaBean的形式返回,抛弃一些出现异常的问题与方法,遵循Java开发规范
直接实现Bean转换为Map,方便快捷,粘贴即用
”的)生成订单编号去除指定字符一个参数的非空验证多个参数非空验证将Javabean,Json,转换为Map将JavaBean转换成JSONObject(通过Map中转)将Map转换成Javabean从最小值到最大值之间,随机取 N 个不重复的
在已经有xml的情况下,快速生成javabean代码,不需要自己再手打大量无聊的代码。
通用的Java Bean与Map互转的源代码,方便实用。
json与JavaBean、Map和list之间的转换问题
主要给大家介绍了关于在java中用ObjectMapper类实现Json与bean转换的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面跟着小编来一起学习学习吧。
excel-bean 主要功能是 JavaBean 与 Excel 数据行之间的互相转换,普通项目中都会有Excel的导入导出功能,使用该工具可以大大提高工作效率,使开发者不必关系复杂...同时支持List,Map等数据类型转换成Excel表格数据!