SpringBoot项目中如何详细使用Lombok插件?
- 内容介绍
- 文章标签
- 相关推荐
本文共计771个文字,预计阅读时间需要4分钟。
背景分析:在Java项目中,我们创建的POJO类几乎都需要为属性添加set/get/toString等方法。同时,所有的日志记录相关类可能都需要创建日志对象。这些样板代码虽然技术含量不高,但影响代码质量和可读性。
优化建议:
1.使用Lombok库简化POJO类代码,自动生成set/get/toString等方法。
2.使用日志框架(如Log4j、SLF4J等)自动生成日志记录相关代码,避免手动创建日志对象。
示例代码:
javaimport lombok.Data;import org.slf4j.Logger;import org.slf4j.LoggerFactory;@Datapublic class User { private Integer id; private String name; private Integer age;
private static final Logger logger=LoggerFactory.getLogger(User.class);
public void logInfo(String message) { logger.info(message); }}
背景分析
在实际的java项目中我们创建的所有pojo类几乎都要为属性添加set/get/toString等相关方法,所有的日志记录相关类可能都要创建日志等对象,这些样板代码既没有技术含量,又影响着代码的美观,同时重复的编码过程会在无形中加大我们的工作量。 此时Lombok应运而生。
lombok简介
概述
Lombok是一个第三方的Java库,它会自动插入编辑器和构建工具中,Lombok提供了一组有用的注释,用来告诉编译过程中的编译工具,在源代码编译成字节码的过程中,在字节码中添加一些量样板代码。
常用注解分析
- @Setter 用于为描述的类生成setter方法,不包含final修饰属性。
- @Getter 用于为描述的类生成getter方法。
- @ToString 用于为描述的类添加toString方法。
- @EqualsAndHashCode 用于为描述的类,生成hashCode和equals方法。
- @NoArgsConstructor 用于为描述的类生成无参的构造方法。
- @AllArgsConstructor 用于为描述的类生成包含类中所有字段的构造方法。
- @Data用于为描述的类生成setter/getter、equals、canEqual、hashCode、toString方法,如为final属性,则不会为该属性生成setter方法。
- @Slf4J 用于为描述的类添加一个日志属性对象。
lombok安装
idea中的安装配置
第一步:打开idea的设置窗口,找到plugins菜单,搜索lombok进行安装,如图所示:
第二步:启动注解处理,如图所示:
第三步:重启idea(可选,有的idea版本需要)。
lombok在maven项目中应用
第一步:添加lombok依赖。
(mvnrepository.com 该链接可以搜索坐标)
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <scope>annotationProcessor</scope> </dependency>
第二步:在类上应用lombok注解。
@Data @NoArgsConstructor @AllArgsConstructor public class Brand { private Integer id; private String name; private String remark; private Date createdTime; }
第三步:编写单元测试类检测Lombok注解应用
@Slf4j @SpringBootTest public class GoodsTests{ @Test void testGoods(){ Goods g=new Goods(); g.setId(100L); g.setName("Lombok"); log.info("id的值为{}",g.getId()); log.info("name的值为{}",g.getName()); } }
总结(Summary)
本小节主要对lombok做了一个分析,安装和配置,并结合实际项目讲解了lombok的应用场景及具体应用过程。
到此这篇关于SpringBoot工程下Lombok的应用的文章就介绍到这了,更多相关SpringBoot工程Lombok的应用内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!
本文共计771个文字,预计阅读时间需要4分钟。
背景分析:在Java项目中,我们创建的POJO类几乎都需要为属性添加set/get/toString等方法。同时,所有的日志记录相关类可能都需要创建日志对象。这些样板代码虽然技术含量不高,但影响代码质量和可读性。
优化建议:
1.使用Lombok库简化POJO类代码,自动生成set/get/toString等方法。
2.使用日志框架(如Log4j、SLF4J等)自动生成日志记录相关代码,避免手动创建日志对象。
示例代码:
javaimport lombok.Data;import org.slf4j.Logger;import org.slf4j.LoggerFactory;@Datapublic class User { private Integer id; private String name; private Integer age;
private static final Logger logger=LoggerFactory.getLogger(User.class);
public void logInfo(String message) { logger.info(message); }}
背景分析
在实际的java项目中我们创建的所有pojo类几乎都要为属性添加set/get/toString等相关方法,所有的日志记录相关类可能都要创建日志等对象,这些样板代码既没有技术含量,又影响着代码的美观,同时重复的编码过程会在无形中加大我们的工作量。 此时Lombok应运而生。
lombok简介
概述
Lombok是一个第三方的Java库,它会自动插入编辑器和构建工具中,Lombok提供了一组有用的注释,用来告诉编译过程中的编译工具,在源代码编译成字节码的过程中,在字节码中添加一些量样板代码。
常用注解分析
- @Setter 用于为描述的类生成setter方法,不包含final修饰属性。
- @Getter 用于为描述的类生成getter方法。
- @ToString 用于为描述的类添加toString方法。
- @EqualsAndHashCode 用于为描述的类,生成hashCode和equals方法。
- @NoArgsConstructor 用于为描述的类生成无参的构造方法。
- @AllArgsConstructor 用于为描述的类生成包含类中所有字段的构造方法。
- @Data用于为描述的类生成setter/getter、equals、canEqual、hashCode、toString方法,如为final属性,则不会为该属性生成setter方法。
- @Slf4J 用于为描述的类添加一个日志属性对象。
lombok安装
idea中的安装配置
第一步:打开idea的设置窗口,找到plugins菜单,搜索lombok进行安装,如图所示:
第二步:启动注解处理,如图所示:
第三步:重启idea(可选,有的idea版本需要)。
lombok在maven项目中应用
第一步:添加lombok依赖。
(mvnrepository.com 该链接可以搜索坐标)
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <scope>annotationProcessor</scope> </dependency>
第二步:在类上应用lombok注解。
@Data @NoArgsConstructor @AllArgsConstructor public class Brand { private Integer id; private String name; private String remark; private Date createdTime; }
第三步:编写单元测试类检测Lombok注解应用
@Slf4j @SpringBootTest public class GoodsTests{ @Test void testGoods(){ Goods g=new Goods(); g.setId(100L); g.setName("Lombok"); log.info("id的值为{}",g.getId()); log.info("name的值为{}",g.getName()); } }
总结(Summary)
本小节主要对lombok做了一个分析,安装和配置,并结合实际项目讲解了lombok的应用场景及具体应用过程。
到此这篇关于SpringBoot工程下Lombok的应用的文章就介绍到这了,更多相关SpringBoot工程Lombok的应用内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!

