blazeds (java boolean类型) 慎用eclipse的自动getter,setter

xiaoxiao2026-09-20  6

标题有点大,但确实因为这个自动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的代码功能还需要加强,排版排了半天也还有问题,算了不排了

 

=================

写了个新手帖...

 

转载请注明原文地址: https://www.6miu.com/read-5052808.html

最新回复(0)