package com.hainabo.mgcmall.util;

import java.beans.BeanInfo;
import java.beans.Introspector;
import java.beans.PropertyDescriptor; public class BeanUtils { public static <M> void merge(M target, M destination) throws Exception {
BeanInfo beanInfo = Introspector.getBeanInfo(target.getClass()); // 遍历所有属性
for (PropertyDescriptor descriptor : beanInfo.getPropertyDescriptors()) {
// 允许读写
if (descriptor.getWriteMethod() != null) {
//Object originalValue = descriptor.getReadMethod().invoke(target);//target中(descriptor)的值
// Only copy values values where the destination values is null
//if (originalValue == null) {
Object defaultValue = descriptor.getReadMethod().invoke(destination);//destination中(descriptor)的值
if(defaultValue!=null && !"".equals(defaultValue)){
descriptor.getWriteMethod().invoke(target, defaultValue);//用defaultValue覆盖到target
}
//}
}
}
}
} 此方法会将 destination中!""&!null 的值覆盖到 target中

java bean 合并的更多相关文章

  1. 用大白话聊聊JavaSE -- 如何理解Java Bean(一)

    首先,在开始本章之前,先说一个总的概念:所谓的Java Bean,就是一个java类,编译后成为了一个后缀名是 .class的文件.这就是Java Bean,很多初学者,包括当年的我自己,总是被这些专 ...

  2. Java Bean、POJO、 Entity、 VO 、PO、DAO

    Java Bean.POJO. Entity. VO , 其实都是java 对象,只不过用于不同场合罢了.    Java Bean: 就是一个普通的Java 对象, 只不过是加了一些约束条件.  声 ...

  3. [Java] JSP笔记 - Java Bean

    一. Java Bean 是什么? Java Bean 其实就是一个符合特定规则的 Java Class.这些规则包括: 使用 public 声明的公用类 属性使用public 的get,set方法访 ...

  4. Java Bean

    Java 帝国之Java bean (上) Java 帝国之Java bean(下) Difference between DTO, VO, POJO, JavaBeans? Java bean 是个 ...

  5. Java bean validation 规范与参考实现

    1.Apache Bval 依赖包:validation-api-1.1.0.Final.jar org.apache.bval.bundle-1.1.1.jar bval-core-1.1.1.ja ...

  6. java bean 转换工具

    考量要素: 1.简单的约定优于配置的同名属性copy 2.嵌套属性copy 3.flattern(扁平化)支持,要支持N层结构的copy到一层结构. 4.性能 如下这个网页,里面提到了好多工具. ht ...

  7. java bean、List、数组、map和Json的相互转化

    工程 json包为  代码 package com.my.json; public class ChildBean { private String childName; private String ...

  8. spring mvc返回json字符串数据,只需要返回一个java bean对象就行,只要这个java bean 对象实现了序列化serializeable

    1.spring mvc返回json数据,只需要返回一个java bean对象就行,只要这个java bean 对象实现了序列化serializeable 2. @RequestMapping(val ...

  9. JAVA bean与XML互转的利器---XStream

    最近在项目中遇到了JAVA bean 和XML互转的需求, 本来准备循规蹈矩使用dom4j忽然想起来之前曾接触过的XStream, 一番研究豁然开朗,利器啊利器, 下来就XStream的一些用法与大家 ...

随机推荐

  1. Marketing™Series用户手册(Marketing™Series Manual)

    起源(Origin) 每日构建(Daily Build) 软件不支持的功能(Functions which are not supported.) 软件支持的功能(Functions which ar ...

  2. (MSSQL)sp_refreshview刷新视图失败及更新Table字段失败的问题解决

    在近期工作中遇到一个任务,需要批量更改散布在很多Table中的某字段,同时刷新相关视图,但是在执行脚本时,发现了如下问题 更新字段问题 消息 ,级别 ,状态 ,第 行 对象'View_Simple' ...

  3. SpringXML方式配置bean的懒加载lazy-init

    lazy-init(懒加载),表示该bean在容器初始化的时候不进行初始化. 例如: <bean name="role1" class="com.fz.entity ...

  4. Ubuntu下执行mysql的sql文件

    Ubuntu下执行mysql的.sql文件   方法一: 1.执行此命令,会提示输入mysql的root账户的密码,验证成功后,会在dbname这个数据库中执行filename.sql这个脚本,其中f ...

  5. JMter中添加断点和关联

    一.            断点 断言是什么呢,它是用来检查返回结果对不对的. 用来验证结果是否正确,如果正确的话,就代表这个请求的返回是正确的,如果没有的话就代表这个请求的结果和我们预期的不一致,这 ...

  6. [Linux] Boot分区满了的处理方法 The volume "boot" has only 0 bytes disk space remaining

    1.查看系统目前正在用的内核 abby@abby:~$ uname -r ..--generic 2.查看/boot保存的所有内核 abby@abby:~$ ls -lah /boot total 3 ...

  7. NHibernate 01 [简述]

    本节内容: 系列简述 NHibernate是什么? NHibernate好处? 1.系列简述 最近在项目中使用到NHibernate,所以记录下自己学习的内容和步骤. 2.NHibernate是什么? ...

  8. MapReduce工作原理(简单实例)

    Map-Reduce框架的运作完全基于<key,value>对,即数据的输入是一批<key,value>对,生成的结果也是一批<key,value>对,只是有时候它 ...

  9. 奇异值分解(SVD)详解

    在网上看到有很多文章介绍SVD的,讲的也都不错,但是感觉还是有需要补充的,特别是关于矩阵和映射之间的对应关系.前段时间看了国外的一篇文章,叫A Singularly Valuable Decompos ...

  10. BZOJ1014 JSOI2008 火星人prefix 【非旋转Treap】*

    BZOJ1014 JSOI2008 火星人prefix Description 火星人最近研究了一种操作:求一个字串两个后缀的公共前缀.比方说,有这样一个字符串:madamimadam,我们将这个字符 ...