/**
* 将一个 Map 对象转化为一个 JavaBean 使用时最好保证value值不为null 不支持枚举类型和 用户自定义类
* @param type 要转化的javabean
* @param map 包含属性值的map map的key值为javabean属性 key值小写
* @return 转化出来的 JavaBean 对象
* @throws Exception Exception
*/
@SuppressWarnings("unchecked")
public Object convertMap(Class type, Map<Object, Object> map)
throws Exception
{
// 创建 JavaBean 对象
Object obj = null;
// 获取类属性
BeanInfo beanInfo = Introspector.getBeanInfo(type);
obj = type.newInstance();
// 给 JavaBean 对象的属性赋值
PropertyDescriptor[] propertyDescriptors = beanInfo
.getPropertyDescriptors();
for (int i = 0; i < propertyDescriptors.length; i++)
{
PropertyDescriptor descriptor = propertyDescriptors[i];
String propertyName = descriptor.getName().toLowerCase(
Locale.getDefault());
if (map.containsKey(propertyName))
{
String value = ConvertUtils.convert(map.get(propertyName));
Object[] args = new Object[1];
args[0] = ConvertUtils.convert(value, descriptor
.getPropertyType());
descriptor.getWriteMethod().invoke(obj, args);
}
}
return obj;
}
分享到:
相关推荐
Bean与MAP间互转换的工具类。 1.将一个 Map 对象转化为一个 JavaBean,可指定BEAN的类型; 2.将一个 JavaBean 对象转化为一个 HashMap;
一般使用springjdbc、hibernate的sql查询,库获取到的数据都是List<Map, Object>>结果集,如果我们要转化为JavaBean,则需要做一系列的map.get(),然后obj.set()。 此工程中就是解决List<Map, Object>>转化为...
下面是一个通用的 JavaBean 转换为 Map 的方法: ```java public static Map convertBean(Object bean) throws IntrospectionException, IllegalAccessException, InvocationTargetException { Class type = bean....
将一个 Map对象转化为JavaBean的形式返回,抛弃一些出现异常的问题与方法,遵循Java开发规范
在这个例子中,我们创建了一个`Map, Point>`,然后将其转换为JSON字符串,再反序列化回Map对象。 总结来说,GSON库提供了一种简洁、强大的方式来处理Java对象与JSON之间的转换。对于包含复杂键类型的Map,如Map...
它提供了许多功能,例如将Java对象转化为JSON字符串,或者将JSON文本解析为Java对象。这对于数据的序列化和反序列化非常有用,使得在服务器端和客户端之间传递复杂的数据结构变得更加便捷。 `ezmorph`库则主要用于...
在上述示例中,`ObjectMapper`将JSON字符串转换为一个Map对象,然后BeanUtils的`copyProperties`方法会遍历Map,将键值对分别赋值给User对象的对应属性。 相反,如果你需要将JavaBean转换为JSON字符串,你也可以...
例如,使用Apache Commons BeanUtils库,你可以轻松地将JavaBean对象转化为JSON字符串,如下所示: ```java import org.apache.commons.beanutils.BeanUtils; import org.json.JSONObject; public class Json...
它接收一个JavaBean对象和一个Map,其中Map的键是属性名,值是对应的属性值。BeanUtils会遍历Map,将每个键值对中的值设为JavaBean对应属性的值,这里自动处理了类型的转换。 2. `setProperty(Object bean, String ...
上述代码片段展示了一个名为`JSONUtil`的工具类,它提供了将不同类型的Java对象转换为JSON字符串的方法。这个工具类覆盖了基本类型、数组、集合(List、Set)、Map以及JavaBean对象的转换。 1. **基本类型转换**: ...
`json-lib`可以将Java对象(如MAP、BEAN、LIST等)转化为JSON字符串,反之亦可,使得JSON数据能方便地在Java应用中使用。`json-lib`还支持多种数据结构,如Array、HashMap、ArrayList、LinkedList等,并且可以与...
前者将JSON对象转化为指定类型的JavaBean,后者将JSON数组转化为指定类型的List。 6. **自定义转换规则**:在处理复杂的对象结构时,可能需要自定义转换规则。JSON-lib允许通过实现`JsonConfig`接口并设置转换策略...
`json-lib`依赖于`commons-beanutils`这样的库,因为它们提供了方便的数据操作功能,这对于将Java对象转化为JSON字符串或者将JSON解析为Java对象是必要的。例如,当我们要将一个JavaBean转换为JSON时,`commons-...
例如,可以使用`net.sf.json.JSONObject.toBean(jsonString)`将JSON字符串转换为一个JavaBean对象。 - **处理数组**:如果需要处理JSON数组,可以使用`net.sf.json.JSONArray`,提供类似的方法进行序列化和反序列化...
它能够将数组、集合、Map、日期等Java类型转化为JSON格式,并能从JSON字符串中反序列化回Java对象。 2. **ezmorph-1.0.3.jar**:Ezmorph库是一个用于Java对象转换的工具,它允许开发者在运行时将一种类型的对象转换...
例如,如果你有一个JavaBean或者Map对象,你可以使用`fromObject()`方法快速地将其转换为JSON字符串,以便于在网络中传输或者存储。 以下是一些关于如何使用`JSONObject.fromObject()`的示例: ```java import ...
在处理JSON时,可能需要将JSON对象转化为Java对象,这时候ezmorph就派上用场了。它可以方便地将一个对象转换为另一种对象,比如字符串、数字等,这对于JSON数据的解析非常有用。 `commons-lang`是Apache Commons...
- 将Java对象转换为JSON字符串:例如,一个JavaBean或Map可以被转化为JSON格式的字符串,便于在网络间传输。 - 从JSON字符串解析出Java对象:相反,接收到的JSON字符串可以被解析成相应的Java对象,以便进一步处理。...
这个库提供了丰富的API,使得我们可以轻松地将Java对象转化为JSON字符串,以及将JSON字符串反序列化为Java对象。 ### JSON对象与Java对象的转换 1. **JSON字符串转Java对象** 使用`json-lib`,我们可以将JSON...
- **功能**:它提供了将JavaBean集合转化为其他集合类型的方法,例如将Bean列表转化为Map,或者将Bean集合的属性值提取出来形成新的集合。 - **应用场景**:当需要基于JavaBean的属性进行集合操作时,如根据某个...