今天在使用eclipse自动生成Setter/Getter方法时发现, 如果一个布尔型变量命名以“is”开头的话,自动生成的Setter/Getter方法中会将“is”自动去掉,例如:
变量:isRequestable,
生成的变量就会为:
public boolean isRequestable() {
return isRequestable;
}
public void setRequestable(boolean isRequestable) {
this.isRequestable = isRequestable;
}
结果我在使用seam的时候,上下文绑定就出了问题。提示找不到isRequestable这个property.
在代码中自动生成之后,手动将之改写为:
public boolean isIsRequestable() {
return isRequestable;
}
public void setIsRequestable(boolean isRequestable) {
this.isRequestable = isRequestable;
}
问题就解决了
另外,还有一个问题,就是变量名如果是第一个为小写字母,第二个为大写字母,也会出错,例如:eOrder,
这样在生成Setter/Getter方法时也会提示找不到变量。所以将变量改名,然后JPA注释的时候映射一下就可以了。