zoukankan      html  css  js  c++  java
  • 减少重复代码的书写--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
  • 相关阅读:
    VSCODE打开一个文件,另一个文件就关闭的问题的解决方法
    elementui的el-tree第一次加载无法展开和选中的问题
    Java线程知识:二、锁的简单使用
    “商家参数格式有误”应用切微信H5支付完美解决方案
    git 基础操作,公私钥认证/ssh公私钥登录
    Python数据分析之亚马逊股价
    Python分析6000家破产IT公司
    Python数据分析之股票数据
    Python数据分析之全球人口数据
    Vue 面试重点真题演练
  • 原文地址:https://www.cnblogs.com/lyhc/p/9381999.html
Copyright © 2011-2022 走看看