文档详情

合并两个相同对象的属性值,类似于js的extend方法.doc

发布:2017-08-17约8.7千字共16页下载文档
文本预览下载声明
合并两个相同对象的属性值,类似于js的extend方法 合并两个相同对象的属性值,类似于js的extend方法 小姚 发布于 2012年04月03日 1时, 10评/677阅 分享到 新浪微博腾讯微博收藏+3 踩 顶 0 合并两个相同对象的属性值,类似于js的extend方法 标签: 无 代码片段(1) [代码] [Java]代码 view sourceprint?001 //大家帮忙看看,提点意见 002 package cn.utils; 003 004 import java.beans.BeanInfo; 005 import java.beans.IntrospectionException; 006 import java.beans.Introspector; 007 import java.beans.PropertyDescriptor; 008 import java.lang.reflect.InvocationTargetException; 009 import java.sql.Timestamp; 010 import java.text.ParseException; 011 import java.text.SimpleDateFormat; 012 import java.util.ArrayList; 013 import java.util.Date; 014 import java.util.Iterator; 015 import java.util.List; 016 import java.util.Map; 017 import java.util.regex.Pattern; 018 019 import mons.beanutils.BeanUtils; 020 021 022 public class ExtendObject { 023 024 /** 025 * 将相同类型的对象的内容向右合并 026 * @param beanType 返回对象的类型 027 * @param initObject 包含原始数据的对象 028 * @param updateObject 包含修改后数据的对象 029 * @return 返回两个对象的合并,相同属性的值如果convertedObject中包含,且不为null的话取它的值,否则取returnedObject的值 030 */ 031 @SuppressWarnings(unchecked) 032 public Object extendObject(Object beanType, Object initObject, Object updateObject){ 033 Map map1 = BeanToMap(initObject); 034 Map map2 = BeanToMap(updateObject); 035 List list = getMapKeySet(map1); 036 for(int i=0; ilist.size(); i++){ 037 Object map2Value = map2.get(list.get(i)); 038 if(null!=map2Value){ 039 map1.put(list.get(i), map2Value); 040 } 041 } 042 return MapToBean(beanType, map1); 043 } 044 045 /** 046 * 将map转化为bean 047 * @param bean 将要转化成为的对象 048 * @param map 被转化的map对象 049 */ 050 @SuppressWarnings(unchecked) 051
显示全部
相似文档