标题有点大,但确实因为这个自动getter让我查代码查了几天,差点要改实现方法了.
为简化,对应VO就不贴出来了
java pojo:
/**
*为简化,只列举两个字段
*/
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代码改为:
public boolean getIsPaid() {
return isPaid;
}
public void setIsPaid(boolean isPaid) {
this.isPaid = isPaid;
}
即可实现java对象boolean和as boolean的双向映射了。郁闷之下,差点准备将几个boolean字段改为String来实现了.
ps:je的代码功能还需要加强,排版排了半天也还有问题,算了不排了
=================
写了个新手帖...