我的数据模型如下:
public class CustomerObject implements Serializable
{
public Integer pkid;
public String code;
public String name;
public CustomerObject()
{
pkid = new Integer(0);
code = "";
name = "";
}
}
现在我从另一个班级打电话给我:
public CustomerObject getCustObj() {
CustomerObject custObj = new CustomerObject();
custObj.pkid = new Integer(1001);
custObj.code = "CUST1001";
return custObj;
}
现在在getCustObj()
函数中,我想只传递pkid
和code
。我的意思是我想从对象中删除变量“name
”然后传递。所以我的传递对象看起来像:
CustomerObject()
{
pkid = 1000;
code = CUST1001;
}
请帮助我如何做到这一点。
实际上我有一个200变量的数据模型。我将使用webservice传递此信息。但在通过webservice传递期间,我可能只需要20次传递。所以我想减少数据大小。
答案 0 :(得分:1)
在CustomerObject类中使用另一个构造函数,如下所示。
public class CustomerObject implements Serializable
{
public Integer pkid;
public String code;
public String name;
public CustomerObject()
{
pkid = new Integer(0);
code = "";
name = "";
}
public CustomerObject(int inPkid, String inCode)
{
this.pkid = inPkid;
code = inCode;
}
}
从另一个类调用getCustomerObject方法时,使用如下
public CustomerObject getCustObj() {
CustomerObject custObj = new CustomerObject(new Integer(1001),"CUST1001");
}
答案 1 :(得分:0)
如果您没有在对象中设置名称,那么它与没有名称的对象一样好,因为name为null。您无法从对象中删除名称变量。 但是如果你真的想这样做,你可以使用继承。创建一个具有除name之外的所有属性的类,其他类扩展第一个类并向其添加name属性。所以现在你可以在不需要name属性时使用头等。