lombok @Accessors用法

? ? 今天在網(wǎng)上看到一個entity實體類的代碼是如下這樣的:

User user = new User()

.setId(1L)

.setUsername("zhangsan")

.setSex(1)

.setPassword("abc123")

.setCreateTime(LocalDateTime.now())

.setBirthday(LocalDate.of(1999, 9, 27))

.setConfig("[{\"field1\":\"Test Field1\",\"field2\":500}]");

一個User實體類對象后面調(diào)用了許多個set方法,這樣寫感覺比每次調(diào)用都在前面加上user來得更加簡潔,于是我去網(wǎng)上找了一下,發(fā)現(xiàn)這種寫法要歸功于Accessors注解。

Accessor的中文含義是存取器,@Accessors用于配置getter和setter方法的生成結(jié)果,下面介紹三個屬性

fluent

fluent的中文含義是流暢的,設置為true,則getter和setter方法的方法名都是基礎屬性名,且setter方法返回當前對象。如下

@Data

@Accessors(fluent = true)

public class User {

? ? private Long id;

? ? private String name;

? ? // 生成的getter和setter方法如下,方法體略

? ? public Long id() {}

? ? public User id(Long id) {}

? ? public String name() {}

? ? public User name(String name) {}

}

chain

chain的中文含義是鏈式的,設置為true,則setter方法返回當前對象。如下

@Data

@Accessors(chain = true)

public class User {

? ? private Long id;

? ? private String name;


? ? // 生成的setter方法如下,方法體略

? ? public User setId(Long id) {}

? ? public User setName(String name) {}

}


prefix

prefix的中文含義是前綴,用于生成getter和setter方法的字段名會忽視指定前綴(遵守駝峰命名)。如下

@Data

@Accessors(prefix = "p")

class User {

private Long pId;

private String pName;

// 生成的getter和setter方法如下,方法體略

public Long getId() {}

public void setId(Long id) {}

public String getName() {}

public void setName(String name) {}

}

參考文章:https://blog.csdn.net/weixin_38229356/article/details/82937420

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. 什么是lombok 官網(wǎng)原話 : Project Lombok is a java library that...
    studymachine閱讀 1,521評論 0 0
  • Lombok可以減少很多重復代碼的書寫。比如說getter/setter/toString等方法的編寫。IDEA安...
    MicoCube閱讀 2,124評論 0 1
  • 1、MyBatis簡介 MyBatis 是一款優(yōu)秀的持久層框架 中文官網(wǎng):https://mybatis.org/...
    CHeng_c0e9閱讀 603評論 0 0
  • @Accessors Accessor的中文含義是存取器,@Accessors用于配置getter和setter方...
    以利亞噻閱讀 475評論 0 0
  • 前言 代碼里面,見到的最多的就是實體Dao(Domain)了。這里的實體主要分為2種,一種是數(shù)據(jù)庫訪問層的實體Do...
    程序大視界閱讀 1,314評論 0 1

友情鏈接更多精彩內(nèi)容