Lombok是Java对象的库,通过注解的形式简化了对象的创建及Getter和Setter方法的定义等繁琐操作。其中,@Accessors注解是Lombok中提供的方便生成链式方法的注解。
Java Lombok之@Accessors用法及说明
概述
Lombok是Java对象的库,通过注解的形式简化了对象的创建及Getter和Setter方法的定义等繁琐操作。其中,@Accessors注解是Lombok中提供的方便生成链式方法的注解。
@Accessors注解的使用
@Accessors注解有下列常用属性:
- fluent:若为true,则生成的setter方法返回该对象,否则无返回值;
- chain:若为true,则生成的setter方法返回该对象;
- prefix:给生成的方法加上前缀;
- readOnly:是否给成员变量设置为final;
- lazy : 若为true,则会生成双重检查锁的单例模式代码。
示例1
@Data
@Accessors(chain = true)
public class Person {
private String name;
private int age;
private String gender;
}
public class TestPerson {
@Test
public void testSetValues() {
Person person = new Person();
person.setName("Tom").setAge(20).setGender("male");
System.out.println(person);
}
}
在这段代码中,我们定义了一个Person类,使用@Data注解,同时为该Person类使用了@Accessors(chain = true)注解,这表示开启链式编码模式。在TestPerson中我们使用该Person类,并调用set方法为其成员变量赋值并打印输出。
示例2
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@ToString(exclude = "password")
@Accessors(chain = true, prefix = "u")
public class User {
private String name;
private String password;
private int age;
private String email;
}
public class TestUser {
@Test
public void testSetValues() {
User user = new User().setUName("test").setUPassword("123456").setUAge(18).setUEmail("test@test.com");
System.out.println(user);
}
}
在这段代码中,我们定义了一个User类,使用@Getter、@Setter、@NoArgsConstructor、@AllArgsConstructor、@ToString(exclude = "password")注解,同时为该User类使用了@Accessors(chain = true, prefix = "u")注解,这表示开启链式编码模式并且生成的方法加上u前缀。在TestUser中我们使用该User类,并调用set方法为其成员变量赋值并打印输出。
总结
@Accessors注解可以方便的生成符合编码规范的链式调用方法,从而简化对象创建及对对象成员变量的操作,提高了代码的可读性。
本文标题为:java Lombok之@Accessors用法及说明
基础教程推荐
- java中使用mysqldump 备份数据库 2023-11-09
- Java常用集合之Set和Map的用法详解 2023-02-19
- 出现SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder“.的解决方法 2023-02-27
- Junit Mockito实现单元测试方法介绍 2023-05-24
- Java解析XML的四种方式 2023-08-10
- Java服务器处理图片上传的方法 2023-01-29
- Java Lambda 表达式详解及示例代码 2024-03-06
- jstack+jdb命令查看线程及死锁堆栈信息的实例 2024-03-19
- Springboot内嵌tomcat应用原理深入分析 2023-06-01
- Java应用程序的多线程mysql连接池 2023-11-04