在java中,从一个对象复制非空并且不是空字段到相同类型的另一个对象(对象是相同类型)

时间:2012-04-05 09:52:38

标签: java hibernate struts

我在项目中使用hibernate,struts,extjs。

我有一个Customer对象,包含以下字段:

  

CUSTID,
  CUSTNAME,   地址,   电话

在UI方面的项目中,我得到了一个custName的对象客户。

所以我需要更新上面的对象(custName是唯一的)。我只有一个具有相同客户名称的对象。所以我将使用客户名称(来自DB的对象)获取该对象。

现在我必须使用更新的客户名称保存对象。

如果我保存如下,我从UI获得客户对象,是

  

客户cust1 = getCustomerByName(cust.getCustName());

     

cust.setCustId(cust1.getCustId());保存(CUST);

如果我这样做,我会丢失客户地址和电话号码。

那么,如何将一个非空或不空字段值的对象复制到另一个相同类型的对象。

任何人都可以帮忙。我只是卡在这里它阻止我保存。

提前致谢!

2 个答案:

答案 0 :(得分:0)

您正在混淆对custcust1的推荐。

除非cust已有地址,否则custId cust cust1上的{{1}}也不会设置{{1}}地址。

答案 1 :(得分:0)

两个选项。使用反射查找所有字段并复制非空字段。或者更好的选择,编写一个显式检查每个字段的更新方法,并根据需要更新数据库实例的字段。