天天看点

关于Boolean类型在flex与java中间传递的问题

public class WestMedicationBo implements Serializable

{

private static final long serialVersionUID = 1L;

private boolean isPaid;

private long rpId;

//以下是用eclipse自动自动getter,setter得到,主要注意boolean类型

public boolean isPaid() {

return isPaid;

}

public void setPaid(boolean isPaid) {

this.isPaid = isPaid;

}

//getter,setter....

}

使用BlazeDS与java交互,你会很郁闷的发现isPaid直接给它true,到前台也得到的只是false,开始还怀疑莫非boolean映射有问题?后来突然想到, amf将java数据反序列化回vo时, 应该是直接调用java 对象的get方法,而将vo转换为java对象时则是调用setter。这里ide自动生成的getter,setter对boolean需要我们手动调整,将上面getter,setter代码改为:

Java代码

public boolean getIsPaid() {

return isPaid;

}

public void setIsPaid(boolean isPaid) {

this.isPaid = isPaid;

}