博客
关于我
Lombok的使用及注解含义
阅读量:803 次
发布时间:2023-02-06

本文共 1642 字,大约阅读时间需要 5 分钟。

Lombok是一种强大的 Java 开发工具,旨在简化实体类(POJO)代码的书写。通过使用特定的注解,开发人员可以自动生成一系列常见的方法,如 getter、setter、toString、equals、hashCode 等,从而提高开发效率。

如何使用 Lombok

在 IDEA 中安装 Lombok 插件

  • 打开 File -> Settings -> Plugins
  • 在Marketplace中搜索“Lombok”并安装插件。
  • 安装完成后,重启 IDEA。
  • 添加 Maven 依赖

    在项目的 pom.xml 文件中添加 Lombok 的依赖:

    org.projectlombok
    lombok
    provided

    常用注解

    Lombok 提供了多种注解,帮助开发人员快速构建和维护代码。

  • @Getter / @Setter

    自动生成 get()set() 方法。

  • @ToString

    自动生成 toString() 方法。

  • @NoArgsConstructor / @AllArgsConstructor

    自动生成无参数构造函数和全参数构造函数。

  • @EqualsAndHashCode

    自动生成 equals()hashCode() 方法。

  • @Data

    组合使用 @Getter@Setter@EqualsAndHashCode@ToString 的效果。

  • @Value

    等价于 @AllArgsConstructor@Getter@EqualsAndHashCode@ToString,并将类和字段设为 final

  • @Accessors

    配置 @Getter@Setter 方法的样式和命名规则,支持链式编程。

  • @Slf4j

    自动生成类的 log 静态常量。

  • @Accessors 注解示例

    chain = true

    public class User {    private String userId;    private String userName;    @Accessors(chain = true)    public void setUserId(String userId) {        this.userId = userId;    }}

    fluent = true

    public class User {    private String userId;    private String userName;    @Accessors(fluent = true)    public void setUserId(String userId) {        this.userId = userId;        return this;    }}

    prefix = “user”

    public class User {    private String userId;    private String userName;    @Accessors(prefix = "user")    public void setUserId(String userId) {        this.userId = userId;    }}

    @Slf4j 示例

    @Slf4jpublic class LogManager {    private static final LogManager logger = new LogManager();    private LogManager() {        // 私有构造函数    }    public void log信息() {        logger.info("日志信息");    }}

    转载地址:http://unufk.baihongyu.com/

    你可能感兴趣的文章
    MySQL 查看有哪些表
    查看>>
    mysql 查看锁_阿里/美团/字节面试官必问的Mysql锁机制,你真的明白吗
    查看>>
    MySql 查询以逗号分隔的字符串的方法(正则)
    查看>>
    MySQL 查询优化:提速查询效率的13大秘籍(避免使用SELECT 、分页查询的优化、合理使用连接、子查询的优化)(上)
    查看>>
    mysql 查询,正数降序排序,负数升序排序
    查看>>
    MySQL 树形结构 根据指定节点 获取其下属的所有子节点(包含路径上的枝干节点和叶子节点)...
    查看>>
    mysql 死锁 Deadlock found when trying to get lock; try restarting transaction
    查看>>
    mysql 死锁(先delete 后insert)日志分析
    查看>>
    MySQL 死锁了,怎么办?
    查看>>
    MySQL 深度分页性能急剧下降,该如何优化?
    查看>>
    MySQL 深度分页性能急剧下降,该如何优化?
    查看>>
    MySQL 添加列,修改列,删除列
    查看>>
    mysql 添加索引
    查看>>
    MySQL 添加索引,删除索引及其用法
    查看>>
    MySQL 用 limit 为什么会影响性能?
    查看>>
    MySQL 用 limit 为什么会影响性能?有什么优化方案?
    查看>>
    MySQL 用户权限管理:授权、撤销、密码更新和用户删除(图文解析)
    查看>>
    mysql 用户管理和权限设置
    查看>>
    MySQL 的 varchar 水真的太深了!
    查看>>
    mysql 的GROUP_CONCAT函数的使用(group_by 如何显示分组之前的数据)
    查看>>