• 减少重复代码的书写--Lombok


    本文版权归 远方的风lyh和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作。

    在开发中,比如我们要写一个modol 实体类 要编写 get、set 这些获取和填值的方法,这样写也没错,但重复代码,不是很优雅!

    今天发现了一个可以降低我们编码量的方法 使用 lombok 插件(可以maven配置   也可以idea、eclipse插件安装)

      这里只说明maven配置方式

    使用说明 

      pom 引入 lombok 

    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.18.0</version>
        <scope>provided</scope>
    </dependency

           比如我们写一个实体类 加入标签即可 省去 set 、get方法的编写

    /**
     * 购物车 实体
     * @author xxx
     */
    @Getter
    @Setter
    public class Cart implements Serializable {
        /** 商户号 */
        private String merchantId;
        /** 餐桌号 */
        private String tableId;
    
        private String merchantName;
        /**购物车详情 */
        private List<UserOrderDetail> userOrderDetailList;
    }

       上面代码中@Getter@Setter, 会默认生成一个无参构造。和对应的get (*注意 布尔值 为 is方法)和 set方法 , 该注解可以使用在类上也可以使用在 属性上

    lombok 插件除了上面的 注解 还提供其他注解:

    @Data :该注解使用在类上,该注解会提供getter、setter、equals、canEqual、hashCode、toString方法。

    @NonNull 该注解使用在属性上,该注解用于非空字段检查,当放在setter方法的字段上,若字段为空,则抛出NullPointerException。 该注解会默认是生成一个无参构造。 

    Lombok提供的注解

    • @Setter
    • @Getter
    • @Data
    • @NonNull
    • @Log
    • @AllArgsConstructor
    • @NoArgsConstructor
    • @EqualsAndHashCode
    • @Cleanup
    • @ToString
    • @RequiredArgsConstructor
    • @Value
    • @SneakyThrows
    • @Synchronized
  • 相关阅读:
    Python3之random模块常用方法
    Go语言学习笔记(九)之数组
    Go语言学习笔记之简单的几个排序
    Go语言学习笔记(八)
    Python3之logging模块
    Go语言学习笔记(六)
    123. Best Time to Buy and Sell Stock III(js)
    122. Best Time to Buy and Sell Stock II(js)
    121. Best Time to Buy and Sell Stock(js)
    120. Triangle(js)
  • 原文地址:https://www.cnblogs.com/lyhc/p/9381999.html
Copyright © 2020-2023  润新知