java Lombok之@Accessors用法及说明

Java Lombok之@Accessors用法及说明

概述

Lombok是Java对象的库,通过注解的形式简化了对象的创建及Getter和Setter方法的定义等繁琐操作。其中,@Accessors注解是Lombok中提供的方便生成链式方法的注解。

@Accessors注解的使用

@Accessors注解有下列常用属性:

  1. fluent:若为true,则生成的setter方法返回该对象,否则无返回值;
  2. chain:若为true,则生成的setter方法返回该对象;
  3. prefix:给生成的方法加上前缀;
  4. readOnly:是否给成员变量设置为final;
  5. 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用法及说明 - Python技术站

(0)
上一篇 2023年5月26日
下一篇 2023年5月26日

相关文章

  • MyBatis-Plus如何最优雅最简洁地完成数据库操作

    MyBatis-Plus 如何最优雅最简洁地完成数据库操作攻略 MyBatis-Plus 是基于 MyBatis 的一款优秀的增强工具库,它可以帮助开发者简化操作、提升开发效率。下面,我们将详细介绍 MyBatis-Plus 如何最优雅最简洁地完成数据库操作。 一、如何引入 MyBatis-Plus 在 pom.xml 中添加如下 Maven 依赖: &lt…

    Java 2023年5月20日
    00
  • Java实现简单的分页功能

    下面是“Java实现简单的分页功能”的完整攻略。 第一步:引入相关依赖 在项目的pom.xml文件中引入以下依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa&…

    Java 2023年5月26日
    00
  • java导出到excel常用的几种方式总结

    Java导出到Excel常用的几种方式总结 在Java的开发中,我们经常会遇到将数据导出到Excel表格的需求。本文主要总结了Java导出到Excel常用的几种方式,包括使用POI、EasyExcel等框架实现导出,以及使用CSV格式和HTML格式导出的方法。 使用POI实现导出 Apache POI是一个Java API,用于处理Microsoft Off…

    Java 2023年5月26日
    00
  • 微信小程序实现上传图片功能

    为了能更好地讲解实现上传图片功能的攻略,我会先介绍一下常用的两种上传方式,再分别对其进行示例说明,最后提供具体的代码实现。 常见的图片上传方式 表单上传 表单上传是指通过表单提交的方式将图片上传至服务器,传统的网页上传图片一般采用表单上传的方式。文件上传需要使用input元素, 其中type属性设为file。在提交表单时,浏览器会把文件的二进制数据打包成 M…

    Java 2023年5月23日
    00
  • Spring cloud config 配置文件加密方式

    首先需要说明的是,Spring Cloud Config 支持多种加密方式。这里我们将介绍两种比较常用的加密方式:对称加密和非对称加密。 对称加密方式 对称加密方式是一种加密方式,即使用同一个密钥进行加密和解密。Spring Cloud Config 支持对称加密方式,只需要在配置文件中指定相应的算法和密钥即可。 配置参数 在使用对称加密方式时,需要在配置文…

    Java 2023年5月20日
    00
  • Java搜索与图论之DFS和BFS算法详解

    Java搜索与图论之DFS和BFS算法详解 DFS算法基本原理 DFS(深度优先搜索)指的是从图的某个顶点出发,访问其所有能到达的顶点,并且尽可能深的搜索其中一支支路径的搜索算法。遍历过的点存放到形成的树中。树中每个结点的祖先结点都位于它的所有子树中,它的祖先结点包括它父亲结点和它父亲的祖先结点。DFS一般采用递归或者栈实现,其算法流程如下: 访问起始顶点 …

    Java 2023年5月19日
    00
  • Java8新特性之空指针异常的克星Optional类的实现

    Java8新特性之空指针异常的克星Optional类的实现 前言 在 Java 中,我们经常会遇到空指针异常(NullPointerException),尤其是在处理数据集合或者从接口返回数据时,如果拿到了 null 值,程序就会抛出异常。 Java 8 中提供了一个克星空指针异常的类 Optional,它可以有效地解决 null 值的问题。 Optiona…

    Java 2023年5月27日
    00
  • Tomcat中catalina.out 和 catalina.log的区别和用途详解

    Tomcat是一个基于Java的开源Web服务器,它是一种轻量级应用服务器,功能强大,广泛应用于Web应用程序的开发和部署。Tomcat中的catalina.out和catalina.log是服务器日志文件,这两个文件虽然非常重要,但作用有一些差别。 catalina.out catalina.out是Tomcat的标准输出文件,它记录了Tomcat启动、停…

    Java 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部