zoukankan      html  css  js  c++  java
  • lombok 的使用

    首先在使用之前先安装lombok插件,因为了使用注解让它自动生成例如 get/set 方法,在编码阶段如果没有插件,不能显式调用方法,这里基于idea安装:

    步骤:File ——》Settings——》Plugins.    搜索lombok,点击安装install

      

    在平时的开发中创建JAVA对象(POJO),也就是JavaBean是再常见不过的工作了,一个普通的实体一般都会有对象的属性,以及属性对应的getter和setter方法,再加上构造函数、toString、hashCode、equals等等方法,简单的一个java对象,少则几十行,多着几百上千行,代码冗长,阅读性相对较差。lombok能很好的解决这个问题,消除代码的冗长。

    想要使用lombok,需要引入坐标:

    <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>1.18.8</version>
            </dependency>

    lombok常用的注解:

      @Data
        是lombok中最常用的注释,集合了@ToString, @EqualsAndHashCode, @Getter和@Setter

        注意点1: 同时使用@Data 和 @AllArgsConstructor 后 ,默认的无参构造函数失效,如果需要它,要重新设置 @NoArgsConstructor。

        注意点2:当java对象有继承了父类方法的时候,需要同时使用@EqualsAndHashCode(callSuper=false),callSuper是指equals和hashCode是不是需要包含父类的属性,false为不包含父类属性。

      @Getter、@Setter、@ToString、@EqualsAndHashCode、@NoArgsConstructor、@AllArgsConstructor 不再赘述

      @NonNull

        注解在属性上;标识属性是不能为空,为空则抛出异常。

      @Slf4j

        注解在类上;根据用户实际使用的日志框架生成log日志对象。

      @Log4j

        注解在类上;为类提供一个 属性名为 log 的 log4j 日志对象

      @Cleanup
        这个注释可用于确保释放分配的资源,当局部变量被注释为@Cleanup,任何后续代码都包装在try/finally块,该块确保在当前作用域结束时调用清理方法。(自动调用close()方法)

    @Cleanup 
    InputStream in = new FileInputStream(args[0]);
    @Cleanup 
    OutputStream out = new FileOutputStream(args[1]);
  • 相关阅读:
    关于php中,记录日志中,将数组转为json信息记录日志时遇到的问题总结
    快速搭建vsftp 服务器并配置指定目录
    Chrome 里的请求报错 "CAUTION: Provisional headers are shown" 是什么意思?
    使用sed,grep 批量修改文件内容
    Linux如何让进程在后台运行的三种方法详解
    redis 安装方式
    beanstalk 安装
    mysql 错误信息
    PostgreSQL LIMIT 子句
    pg_dump和pg-server版本不一致问题的解决办法
  • 原文地址:https://www.cnblogs.com/roadlandscape/p/12467359.html
Copyright © 2011-2022 走看看