我想从其他bean填充bean。
Example:
// this is mapped to db using hibernate.
class A {
string name;
string age;
Date dateA;
B obj;
}
// this was mapped to db but now I'd like to populate it from class A member dateA;
class B{
Date date;
}
当我尝试设置B对象时,我得到了nullpointerexception。知道如何处理这个问题吗?
答案 0 :(得分:1)
Dozer是Java Bean到Java Bean映射器,它以递归方式将数据从一个对象复制到另一个对象。
Mapper mapper = new DozerBeanMapper();
DestinationObject destObject = mapper.map(sourceObject, DestinationObject.class);
有关详细信息,请按照 Dozer
答案 1 :(得分:0)
您应该在调用B Obj = new B()
之前实例化obj.setDate()
。
如果您已经这样做了,如果我遗漏了某些内容,请在问题中提供足够的信息。
答案 2 :(得分:0)
Apache Commons BeanUtils有几种不同的方法可以实现您的目标。
您可以使用BeanUtils.copyProperties()
。还有BeanUtils.cloneBean()
。
答案 3 :(得分:0)