Javabean和map相互转化方法代码示例
在做导入的时候,遇到了需要将map对象转化成javabean的问题,也就是说,不清楚javabean的内部字段排列,只知道map的key代表javabean的字段名,value代表值。
那现在就需要用转化工具了。是通用的哦!
首先来看JavaBean转化成Map的方法:
/**
*将一个JavaBean对象转化为一个Map
*@parambean要转化的JavaBean对象
*@return转化出来的Map对象
*@throwsIntrospectionException如果分析类属性失败
*@throwsIllegalAccessException如果实例化JavaBean失败
*@throwsInvocationTargetException如果调用属性的setter方法失败
*/
@SuppressWarnings({"rawtypes","unchecked"})
publicstaticMapconvertBean(Objectbean)
throwsIntrospectionException,IllegalAccessException,InvocationTargetException{
Classtype=bean.getClass();
MapreturnMap=newHashMap();
BeanInfobeanInfo=Introspector.getBeanInfo(type);
PropertyDescriptor[]propertyDescriptors=beanInfo.getPropertyDescriptors();
for(inti=0;i
下面是将Map转化成JavaBean对象的方法:
/**
*将一个Map对象转化为一个JavaBean
*@paramtype要转化的类型
*@parammap包含属性值的map
*@return转化出来的JavaBean对象
*@throwsIntrospectionException如果分析类属性失败
*@throwsIllegalAccessException如果实例化JavaBean失败
*@throwsInstantiationException如果实例化JavaBean失败
*@throwsInvocationTargetException如果调用属性的setter方法失败
*/
@SuppressWarnings("rawtypes")
publicstaticObjectconvertMap(Classtype,Mapmap)
throwsIntrospectionException,IllegalAccessException,
InstantiationException,InvocationTargetException{
BeanInfobeanInfo=Introspector.getBeanInfo(type);//获取类属性
Objectobj=type.newInstance();//创建JavaBean对象
//给JavaBean对象的属性赋值
PropertyDescriptor[]propertyDescriptors=beanInfo.getPropertyDescriptors();
for(inti=0;i
以上内容我测试过,是没有问题的,供大家参考学习。感谢大家对本站的支持。