zoukankan      html  css  js  c++  java
  • Java开发中lombok 下

    1.需要添加依赖

    1 <dependency>
    2             <groupId>org.projectlombok</groupId>
    3             <artifactId>lombok</artifactId>
    4             <version>0.10.2</version>
    5 </dependency>

    2.IDEA设置->plugins插件里面->安装lombok插件

      同时设置 Setting -> Compiler -> Annotation Processors -> Enable annotation processing勾选。

    3.使用

    lombok注解在java进行编译时进行代码的构建,对于java对象的创建工作它可以更优雅,不需要写多余的重复的代码,这对于JAVA开发人员是很重要的,在出现lombok之后,对象的创建工作更提供Builder方法,它提供在设计数据实体时,对外保持private setter,而对属性的赋值采用Builder的方式,这种方式最优雅,也更符合封装的原则,不对外公开属性的写操作!

    @Builder声明实体,表示可以进行Builder方式初始化,@Value注解,表示只公开getter,对所有属性的setter都封闭,即private修饰,所以它不能和@Builder现起用

    一般地,我们可以这样设计实体!

     1 @Builder(toBuilder = true)
     2 @Getter
     3 public class UserInfo {
     4   private String name;
     5   private String email;
     6   @MinMoney(message = "金额不能小于0.")
     7   @MaxMoney(value = 10, message = "金额不能大于10.")
     8   private Money price;
     9 
    10 }

    @Builder注解赋值新对象

    1 UserInfo userInfo = UserInfo.builder()
    2         .name("zzl")
    3         .email("bgood@sina.com")
    4         .build();

    @Builder注解修改原对象的属性值

    修改实体,要求实体上添加@Builder(toBuilder=true)

    1  userInfo = userInfo.toBuilder()
    2         .name("OK")
    3         .email("zgood@sina.com")
    4         .build();

    @Data : 注解在类上, 为类提供读写属性, 此外还提供了 equals()、hashCode()、toString() 方法
    @Getter/@Setter : 注解在类上, 为类提供读写属性
    @ToString : 注解在类上, 为类提供 toString() 方法
    @Slf4j : 注解在类上, 为类提供一个属性名为 log 的 log4j 的日志对象
    @Log4j : 注解在类上, 为类提供一个属性名为 log 的 log4j 的日志对象

  • 相关阅读:
    React开发流程及认识
    Python整合AnaConda
    计算机显示器扩展方向调整
    python3 urlencode 和 urldecode 使用
    解决开启Vue项目缺少node_models包问题
    解决开启Vue项目缺少node_models包问题
    python中列表相加
    python炒鸡面试题
    Django中的CBV控制前后端分离模式
    selenuim使用总结
  • 原文地址:https://www.cnblogs.com/biggw/p/12145238.html
Copyright © 2011-2022 走看看