概要
lombok一个开发常用插件,节省还多开发代码,提高开发效率;
lombok官方地址【需要了解详情信息可以去官网查阅】
整体架构流程
package org.xiaogaga.curd.pojo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.*;
import lombok.extern.slf4j.Slf4j;
import java.io.Serializable;
import java.util.Date;
@Data // get/set方法和无参构造方法和toString方法
@Builder // 建造者模式 userBuilder()方法获取 UserBuilder类,调用方法设置属性值,build()方法调用User全参构造器返回对象
@AllArgsConstructor // 全参数构造方法
@NoArgsConstructor // 无参构造方法
@Slf4j // private static final Logger log = LoggerFactory.getLogger(User.class);
@EqualsAndHashCode // 重写hashCode和equals方法
public class User implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键id
*/
private Integer id;
/**
* 用户名称
*/
private String username;
/**
* 性别
*/
private String sex;
/**
* 生日
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date birthday;
/**
* 地址
*/
private String address;
public static void main(String[] args) {
new UserBuilder()
.address(null)
.birthday(null)
.build();
}
}
技术名词解释
@Data

@Builder

@Slf4j

@EqualsAndHashCode

小结
Lombok:通过注解自动生成代码,极大减少Java样板代码(如getter/setter、toString),提升开发效率和代码简洁性。
核心注解:
@Data:全能注解(包含getter/setter/toString等)
@Getter/@Setter:生成get/set方法
@NoArgsConstructor:无参构造
@AllArgsConstructor:全参构造
@Builder:提供建造者模式
优点:代码极简,开发高效。
缺点:降低源码可读性,需IDE插件支持。
1661

被折叠的 条评论
为什么被折叠?



