美文网首页
lombok get/set 与 JavaBean get/se

lombok get/set 与 JavaBean get/se

作者: EricDD | 来源:发表于2018-10-10 21:42 被阅读0次

lombok get/set 与 JavaBean get/set

javaBean get/set 命名规范

一般JavaBean属性对应的 get/set 方法,是get/set 加上属性名首字母大写。

private String courseId;
public String getCourseId() {
    return courseId;
}
public void setCourseId(String courseId) {
    this.courseId = courseId;
}

但是仍有例外

1.属性名第一个字母小写,第二个字母大写。

private String cId;
public String getcId() {
    return cId;
}
public void setcId(String cId) {
    this.cId = cId;
}

2.属性名第一个字母为大写。

private String Url;
public String getUrl() {
    return Url;
}
public void setUrl(String url) {
    Url = url;
}

3.属性名以is 开头,并且属性类型为boolean

private boolean isOk;
public boolean isOk() {
    return isOk;
}
public void setOk(boolean ok) {
    isOk = ok;
}

lombok 与 javaBean 命名规范 特殊情况对比

// lombok 自动生产 get/set
@Getter
@Setter
public class Demo1 {
    private String cId;
    private String URL;
    private boolean isSuccess;
}
// JavaBean get/set 
public class Demo2 {
    private String cId;
    private String URL;
    private boolean isSuccess;

    public String getcId() {
        return cId;
    }

    public void setcId(String cId) {
        this.cId = cId;
    }

    public String getURL() {
        return URL;
    }

    public void setURL(String URL) {
        this.URL = URL;
    }

    public boolean isSuccess() {
        return isSuccess;
    }

    public void setSuccess(boolean success) {
        isSuccess = success;
    }
}
// lombok
Demo1 demo1 = new Demo1();
//JavaBean
Demo2 demo2 = new Demo2();

// 属性名第一个字母小写,第二个字母大写
// JavaBean get/set 后部分, 属性名大小写不变
// lombok  get/set 后部分,属性名首字母大写
demo1.setCId("");
demo2.setcId(""); 
demo1.getCId();
demo2.getcId();

demo1.setURL("");
demo2.setURL("");
demo1.getURL();
demo2.getURL();

demo1.setSuccess(true);
demo2.setSuccess(true);
demo1.isSuccess();
demo2.isSuccess();

总结

总结发现三种特殊情况下,如果使用 lombok 自动生成 get/set 时,第一种情况会导致生成get/set 不符合 JavaBean get/set 规范。此时会导致 json序列化,反射等情况,获取数据失败的情况发生。

使用 lombok 减少代码冗余的时候,请注意代码的规范。

相关文章

网友评论

      本文标题:lombok get/set 与 JavaBean get/se

      本文链接:https://www.haomeiwen.com/subject/vmgmaftx.html