// lombok 模型 @Accessors(chain = true) setter链式操作
时间: 2024-08-16 07:01:37 浏览: 60
Lombok 是一个Java库,它通过注解简化了代码编写,特别是当涉及到 getter 和 setter 方法时。`@Accessors(chain = true)` 这个注解就是用来启用 Lombok 自动创建链式setter操作的特性。
在没有Lombok的情况下,如果你有一个类 `User` 定义了属性如 `name`, `age`, 和 `email`,你可能需要手动编写每个属性对应的 setter 方法,如下:
```java
public class User {
private String name;
private int age;
private String email;
// 分别的手动写法
public void setName(String name) { this.name = name; }
public void setAge(int age) { this.age = age; }
public void setEmail(String email) { this.email = email; }
}
```
但有了 `@Accessors(chain = true)`,Lombok会自动生成链式调用的方法,使得设置这些属性变得更加简洁:
```java
// 使用Lombok后的代码
@Getter @Setter @Accessors(chain = true)
public class User {
private String name;
private int age;
private String email;
}
```
现在你可以这样调用 setter 方法:
```java
User user = new User();
user.setName("John").setAge(30).setEmail("john@example.com");
```
这相当于:
```java
user.setName("John");
user.setEmail("john@example.com"); // 这里会自动调用 setUserEmail(user.getEmail());
```
阅读全文