package com.paile.utils.beans; import java.beans.PropertyDescriptor; import java.sql.Timestamp; import java.util.List; import java.util.Set; import org.apache.commons.beanutils.PropertyUtilsBean; import com.mongodb.BasicDBList; import com.mongodb.BasicDBObject; import com.mongodb.DBObject; /*** * 由JavaBean 到mongoDB的DBObject对象的转换(不包含子对象和集合对象) * @author libo */ public class SimpleJavaBean2DBObject { /*** * 将普通Java对象属性复制到DBObject里面(不包含子对象和集合对象) * @param ogi 普通Java对象 *@return 返回DBObject对象 */ public static DBObject copyProperties(Object orig,DBObject dbObj)throws Exception{ if(orig==null){ throw new IllegalArgumentException("No object bean specified,or is null"); } PropertyUtilsBean pro = new PropertyUtilsBean(); PropertyDescriptor[] origDescriptors = pro.getPropertyDescriptors(orig.getClass()); for (int i = 0; i < origDescriptors.length; i++) { PropertyDescriptor pdesc = origDescriptors[i]; String name = pdesc.getName(); if ("class".equals(name)) { continue; // No point in trying to set an object's class }; if (pro.isReadable(orig, name)){ Class<?> t = pdesc.getPropertyType(); boolean isPrimitive = MyBeanUtils.isPrimitiveType(t); if(isPrimitive){ //基础类型(8大类型+String) Object value = pro.getSimpleProperty(orig, name); dbObj.put(name, value); }else if(t == Timestamp.class){ Object value = pro.getSimpleProperty(orig, name); dbObj.put(name, value); }else{ Object value = pro.getSimpleProperty(orig, name); if(t.isAssignableFrom(List.class) ||t.isAssignableFrom(Set.class)){ if(value!=null){ List list = (List)value; if(list.isEmpty()) continue; BasicDBList dbList = new BasicDBList(); for(int j = 0;j<list.size();j++){ Object object = list.get(j); DBObject db = new BasicDBObject(); if(object!=null) copyProperties(object, db); dbList.add(db); } dbObj.put(name, dbList); } }else{ DBObject db = new BasicDBObject(); if(value!=null) copyProperties(value, db ); dbObj.put(name, db); } } } } return null; } }
相关推荐
将数据库对象,通过代码程序,直接转换为Java Bean对象
忽略字段的首字母大小写,将json字符串转成javabean对象,解决Java对象中属性中首字母大写而取不到值(取到的值为空)的问题 忽略字段的首字母大小写,将json字符串转成List,解决Java对象中属性中首字母大写而取不...
将JavaBean对象与Json字符串相互转换,将Java集合与Json字符串集合相互转换。
一个自制的json转换jar 直接调用JsonFactory.toJson()方法可将javaBean转换成json
Java反射 JavaBean对象自动生成插入,更新,删除,查询sql语句操作.docx
NULL 博文链接:https://luyuwww.iteye.com/blog/1988355
1.通过Java反射机制获取JavaBean对象。 2.通过JavaBean全路径字符串获取JavaBean对象。 3.获取JavaBean注解信息
xml转javaBean,javaBean转xml,xml标签大小写问题,CDATA的生成,以及对xml特殊符号的处理
动态扫描指定的包,包含其所有子包 扫描包下面的class文件,并将javaBean注册到spring环境
通过读取解析固定模板中的内容,生成JavaBean类。 除了生成Bean ,也可以生成其他类,可自行扩展。 这种场景比较局限,项目开发中用到的不多,如果定义类有几十、表字段很多,同时应对项目初期,表结构表更需求较多...
下载了绝对不后悔,100%好用,支持Mysql Oracle SQL Server ,PostgreSQl.等数据库 还有各种集成的小工具 表名互转驼峰,,,,Json.XML 字符串格式化..JSon与XMl互转,String字符串拼接等功能
提供json转javabean和javabean转json的方法
使用第三方工具将各种对象转成json格式,比如JavaBean对象/List或Set或Map对象
轻松的实现javaBean到XML的转换,和XML到javaBean的转换
xml与javaBean互转,javaBean与xml互转工具类
对象与对象转换工具类-就Javabean
用JOX实现xml和javabean的相互转换
xml to xsd 进而实现XML与javaBean互转,并且附上具体的使用博客 http://blog.csdn.net/sinat_34979884/article/details/78501892
忽略字段的首字母大小写,将json字符串转成javabean,忽略字段的首字母大小写,将json字符串转成List
java反射实现javabean转json实例代码.docx