代码已上传至Github,有兴趣的同学可以下载来看看:https://github.com/ylw-github/SpringBoot-Log4j-Demo
SpringBoot集成lombok可以让代码更简洁,下面来讲讲lombok的集成与使用。
1. 集成与使用
步骤一:添加lombok依赖
org.projectlombok
lombok
步骤二:实体类
package com.ylw.springboot.lombok;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import lombok.extern.slf4j.Slf4j;
@Data
public class UserEntity {
@Getter
@Setter
private String userName;
@Getter
@Setter
private Integer age;
@Override
public String toString() {
return "UserEntity [userName=" + userName + ", age=" + age + "]";
}
}
步骤三:单元测试
import com.ylw.springboot.lombok.UserEntity;
import org.junit.Test;
public class LomBokTest {
@Test
public void test(){
UserEntity userEntity = new UserEntity();
userEntity.setUserName("zhangsan");
userEntity.setAge(20);
System.out.println(userEntity.toString());
}
}
运行结果:
2. 其它特性
| 注解 | 解析 |
|---|---|
| @Data | 自动生成set/get方法,toString方法,equals方法,hashCode方法,不带参数的构造方法 |
| @NonNull | 让你不在担忧并且爱上NullPointerException |
| @CleanUp | 自动资源管理:不用再在finally中添加资源的close方法 |
| @Setter/@Getter | 自动生成set和get方法 |
| @ToString | 自动生成toString方法 |
| @EqualsAndHashcode | 从对象的字段中生成hashCode和equals的实现 |
| @NoArgsConstructor/@RequiredArgsConstructor/@AllArgsConstructor | 自动生成构造方法 |
| @Value | 用于注解final类 |
| @Builder | 产生复杂的构建器api类 |
| @SneakyThrows | 异常处理(谨慎使用) |
| @Synchronized | 同步方法安全的转化 |
| @Getter(lazy=true) | |
| @Log | 支持各种logger对象,使用时用对应的注解,如:@Log4 |
