● Lombok 作用
● SpringBoot 和 IDEA 官方支持
官方文档:https://projectlombok.org/api/lombok/package-summary.html
1.修改pom.xml,引入lombok依赖
SpringBoot对lombok进行下了版本仲裁
<dependency>
<groupId>org.projectlombokgroupId>
<artifactId>lombokartifactId>
dependency>
2.修改src\main\java\com\llp\bean\Furn.java
@Component
@ConfigurationProperties(prefix = "furn01")
//@ToString //在编译时,生成toString, 默认情况下,会生成一个无参构造器
/**
* 说明:
* 1. Equivalent to (等价于){@code @Getter @Setter @RequiredArgsConstructor @ToString @EqualsAndHashCode}
* 2. @Data 注解等价使用了 如下注解 @Getter @Setter @RequiredArgsConstructor @ToString @EqualsAndHashCode
* 3. @RequiredArgsConstructor : 在我们写Controller或者service层时,需要注入很多mapper接口或者另外的service接口,这时会写很多的@Autowired 或者 @Resource注解,代码看起来很乱。lombok提供了@RequiredArgsConstructor注解卸载类上来代替@Autowired、@Resource注解,需要注意的时在注入时需要使用final定义,或者使用@notnull注解
*/
//@Data
//说明: @NoArgsConstructor 在编译时,会生成无参构造器, 默认情况下,会生成一个无参构造器
//说明:当我们有其它构造器生成时,如果你希望仍然有无参构造器就需要使用@NoArgsConstructor指定一下
// ,否则就会覆盖无参构造器,从而代码错误
@NoArgsConstructor
//说明:@AllArgsConstructor 在编译时,会生成全参构造器
@AllArgsConstructor
@ToString
@Setter
@Getter
public class Furn {
private Integer id;
private String name;
private Double price;
}
@RequiredArgsConstructor注解使用示例
3… 在 idea 安装 lombok 插件, 不装插件也可以用基本的注解,比如 @Data @Getter 等, 但 是不能使用其扩展功能, 比如日志输出…, 所以我们还是安装一下,也比较简单
4.演 示 使 用 Lombok 支 持 日 志 输 出 ( 建 议 使 用 slf4j)