lombok是一款在java开发中简洁化代码非常有用的插件工具,这篇博客对较为罕用的几种注解进行记录,分享学习心得。

应用lombok注解,目标和作用就在于不必再去写常常重复去写的(如Getter,Setter,Constructor等)一些代码了。

首先,用到的几个注解:

@Data

应用这个注解,就不必再去手写Getter,Setter,equals,canEqual,hasCode,toString等办法了,注解后在编译时会主动加进去。

@AllArgsConstructor

应用后增加一个构造函数,该构造函数含有所有已申明字段属性参数

@NoArgsConstructor

应用后创立一个无参构造函数

@Builder

对于Builder较为简单一些,Builder的作用之一是为了解决在某个类有很多构造函数的状况,也省去写很多构造函数的麻烦,在设计模式中的思维是:用一个外部类去实例化一个对象,防止一个类呈现过多构造函数。

代码利用

package com.example.testimport lombok.Data;import lombok.NoArgsConstructor;import javax.validation.constraints.Max;import javax.validation.constraints.Min;import javax.validation.constraints.NotNull;import java.time.LocalDateTime;/** * @author kaiyi * @version 1.0 **/@Data@NoArgsConstructorpublic class OrderListRequest extends BaseRequest {    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")    @NotNull(message = "开始工夫为空")    private LocalDateTime updateTimeBegin;    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")    @NotNull(message = "完结工夫为空")    private LocalDateTime updateTimeEnd;    @Min(value = 1,message = "页码数不能小于1")    @NotNull(message = "页码为空")    private Integer page;    @Min(value = 1,message = "单页条数不能小于1")    @Max(value = 50,message = "单页条数不能大于50")    @NotNull(message = "单页数量为空")    private Integer pageSize;    @NotNull(message = "订单状态为空")    private OrderStatus orderStatus;   }