栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

为了将非null属性从对象复制到另一个对象的助手?(Java)

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

为了将非null属性从对象复制到另一个对象的助手?(Java)

我想您已经有了解决方案,因为自您提出要求以来已经发生了很多时间。但是,它未标记为已解决,也许我可以帮助其他用户。

你有没有定义的一个子类试过

BeanUtilsBean
了的
org.commons.beanutils
包?实际上,
BeanUtils
使用此类,因此这是dfa提出的解决方案的改进。

查看该类的源代码,我认为您可以

copyProperty
通过检查null值来覆盖该方法,如果value为null则不执行任何操作。

像这样的东西:

package foo.bar.copy;import java.lang.reflect.InvocationTargetException;import org.apache.commons.beanutils.BeanUtilsBean;public class NullAwareBeanUtilsBean extends BeanUtilsBean{    @Override    public void copyProperty(Object dest, String name, Object value) throws IllegalAccessException, InvocationTargetException {        if(value==null)return;        super.copyProperty(dest, name, value);    }}

然后,您只需实例化a

NullAwareBeanUtilsBean
并使用它来复制您的bean,例如:

BeanUtilsBean notNull=new NullAwareBeanUtilsBean();notNull.copyProperties(dest, orig);


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/449490.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号