问题描述
最近在做项目的时候,为了在前台动态渲染多选框组件CheckBox,后台在返回对象时,会自带一个defaultChecked
属性,用以判断是否默认勾选。但是再做其他业务逻辑时,需要对其进行判断,然后就发现defaultChecked
没有getter
方法。实体类中使用了lombok插件。
解决方法
lombok插件会将boolean类型的数据的get方法自动改写为 isXXX,笔者经过测试,的确找到了我的isDefaultChecked()方法。因此,可以通过调用这个方法来获取属性值。
如果使用了boolean的封装类Boolean来定义属性,那就会看到正常情况下的setter&getter。
综上,处理方法有二:
- 使用isXXX方法
import lombok.Data;
@Data
public class TestBean{
private boolean defaultChecked;
}
//------------------------------------------------
//---- 为了便于阅读,实体类和引用不再分开写 ------------
//------------------------------------------------
public class BusinessImpl{
public void testMethod(TestBean bean){
//boolean defaultChecked = bean.getDefaultChecked(); //会提示没有getDefaultChecked这个方法
boolean defaultChecked = bean.isDefaultChecked();
}
}
- 修改为Booelan。
import lombok.Data;
@Data
public class TestBean{
private Boolean defaultChecked;
}
//------------------------------------------------
//---- 为了便于阅读,实体类和引用不再分开写 ------------
//------------------------------------------------
public class BusinessImpl{
public void testMethod(TestBean bean){
boolean defaultChecked = bean.getDefaultChecked();
}
}