【Spring Boot 快速入门】六、Spring Boot集成Lombok

简介: 【Spring Boot 快速入门】六、Spring Boot集成Lombok

前言


  相信大部分开发人员都遇到过,在java中对象出现大量的属性生成构造器、getter/setter、equals、hashcode、toString方法,显得很冗长也没有太多技术含量,一旦修改属性,就容易出现忘记修改对应方法的失误。那么有没有比较好的方法去简化这些冗余的低效的代码呢,现在给大家介绍Lombok。


初始


  Lombok 是一种 Java 实用工具,可用来帮助开发人员消除 Java 的冗长,尤其是对于简单的 Java 对象(POJO)。它通过注释实现这一目的。通过在开发环境中实现  Lombok,开发人员可以节省构建诸如 hashCode() 和 equals() 这样的方法以及以往用来分类各种 accessor 和 mutator 的大量时间。


Lombok 缺点


  • 消除冗余低效的代码
  • 注释实现快速开发


Lombok 缺点


  • 强行安装,如果团队中一个人使用了Lombok插件,所有人必须安装。
  • 代码可读性,可调试性低,开发过程中缺少响应的方法,在编译阶段才生成。
  • 有未知的风险:开发者对其产生过度依赖,容易产生意想不到的结果。
  • 影响升级:对于代码有很强的侵入性,对JDK的升级和框架的升级,
  • 破坏封装性,代码耦合度增加,对项目有一定的干扰。


Lombok注解


注解 描述
@NonNull 在方法或者构造方法前进行参数非空检查
@Cleanup 自动资源管理,安全的调用close方法
@Getter 成员变量生成对应的set方法
@Setter 成员变量生成对应的get方法
@ToString 生成toString,equals和hashcode方法
@EqualsAndHashCode 生成toString、equals、hashcode和canEqual方法
@NoArgsConstructor 为类产生无参的构造方法
@RequiredArgsConstructor 类中所有带有@NonNull注解的或者带有final修饰的成员变量生成对应的构造方法
@AllArgsConstructor 为类产生包含所有参数的构造方法
@Data 注在类上,提供类的get、set、equals、hashCode、canEqual、toString方法
@Value 和@Data类似,定义为private final修饰,并且不会生成set方法
@SneakyThrows 捕获异常并在catch中用Lombok.sneakyThrow(e)把异常抛出
@Synchronized 和synchronized关键字相同
@Log 注解用在类上,直接进行日志记录


Lombok安装


设置


  选择file目录点击settings。


image.png


 选择plugins,搜索lombok。


image.png


选择安装即可。

添加依赖

<!-- lombok start -->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.16.18</version>
            <scope>provided</scope>
        </dependency>
        <!-- lombok end -->



结语


    这样Lombok与Spring Boot集成成功啦。更多的测试大家可以深入研究一下Lombok相关信息,相信一定会有新大陆发现的。



目录
打赏
0
0
0
0
7
分享
相关文章
🛡️Spring Boot 3 整合 Spring Cloud Gateway 工程实践
本文介绍了如何使用Spring Cloud Alibaba 2023.0.0.0技术栈构建微服务网关,以应对微服务架构中流量治理与安全管控的复杂性。通过一个包含鉴权服务、文件服务和主服务的项目,详细讲解了网关的整合与功能开发。首先,通过统一路由配置,将所有请求集中到网关进行管理;其次,实现了限流防刷功能,防止恶意刷接口;最后,添加了登录鉴权机制,确保用户身份验证。整个过程结合Nacos注册中心,确保服务注册与配置管理的高效性。通过这些实践,帮助开发者更好地理解和应用微服务网关。
68 0
🛡️Spring Boot 3 整合 Spring Cloud Gateway 工程实践
SpringBoot是如何简化Spring开发的,以及SpringBoot的特性以及源码分析
Spring Boot 通过简化配置、自动配置和嵌入式服务器等特性,大大简化了 Spring 应用的开发过程。它通过提供一系列 `starter` 依赖和开箱即用的默认配置,使开发者能够更专注于业务逻辑而非繁琐的配置。Spring Boot 的自动配置机制和强大的 Actuator 功能进一步提升了开发效率和应用的可维护性。通过对其源码的分析,可以更深入地理解其内部工作机制,从而更好地利用其特性进行开发。
56 6
Spring Boot 3 集成 Spring Security + JWT
本文详细介绍了如何使用Spring Boot 3和Spring Security集成JWT,实现前后端分离的安全认证概述了从入门到引入数据库,再到使用JWT的完整流程。列举了项目中用到的关键依赖,如MyBatis-Plus、Hutool等。简要提及了系统配置表、部门表、字典表等表结构。使用Hutool-jwt工具类进行JWT校验。配置忽略路径、禁用CSRF、添加JWT校验过滤器等。实现登录接口,返回token等信息。
634 12
Spring Boot 3 集成Spring AOP实现系统日志记录
本文介绍了如何在Spring Boot 3中集成Spring AOP实现系统日志记录功能。通过定义`SysLog`注解和配置相应的AOP切面,可以在方法执行前后自动记录日志信息,包括操作的开始时间、结束时间、请求参数、返回结果、异常信息等,并将这些信息保存到数据库中。此外,还使用了`ThreadLocal`变量来存储每个线程独立的日志数据,确保线程安全。文中还展示了项目实战中的部分代码片段,以及基于Spring Boot 3 + Vue 3构建的快速开发框架的简介与内置功能列表。此框架结合了当前主流技术栈,提供了用户管理、权限控制、接口文档自动生成等多项实用特性。
99 8
【Spring】——SpringBoot项目创建
SpringBoot项目创建,SpringBootApplication启动类,target文件,web服务器,tomcat,访问服务器
深入探索Spring Cloud与Spring Boot:构建微服务架构的实践经验
深入探索Spring Cloud与Spring Boot:构建微服务架构的实践经验
227 5
详细介绍SpringBoot启动流程及配置类解析原理
通过对 Spring Boot 启动流程及配置类解析原理的深入分析,我们可以看到 Spring Boot 在启动时的灵活性和可扩展性。理解这些机制不仅有助于开发者更好地使用 Spring Boot 进行应用开发,还能够在面对问题时,迅速定位和解决问题。希望本文能为您在 Spring Boot 开发过程中提供有效的指导和帮助。
66 12
SpringBoot项目打包成war包
通过上述步骤,我们成功地将一个Spring Boot应用打包成WAR文件,并部署到外部的Tomcat服务器中。这种方式适用于需要与传统Servlet容器集成的场景。
36 8
Spring Boot 两种部署到服务器的方式
本文介绍了Spring Boot项目的两种部署方式:jar包和war包。Jar包方式使用内置Tomcat,只需配置JDK 1.8及以上环境,通过`nohup java -jar`命令后台运行,并开放服务器端口即可访问。War包则需将项目打包后放入外部Tomcat的webapps目录,修改启动类继承`SpringBootServletInitializer`并调整pom.xml中的打包类型为war,最后启动Tomcat访问应用。两者各有优劣,jar包更简单便捷,而war包适合传统部署场景。需要注意的是,war包部署时,内置Tomcat的端口配置不会生效。
449 17
Spring Boot 两种部署到服务器的方式
springboot自动配置原理
Spring Boot 自动配置原理:通过 `@EnableAutoConfiguration` 开启自动配置,扫描 `META-INF/spring.factories` 下的配置类,省去手动编写配置文件。使用 `@ConditionalXXX` 注解判断配置类是否生效,导入对应的 starter 后自动配置生效。通过 `@EnableConfigurationProperties` 加载配置属性,默认值与配置文件中的值结合使用。总结来说,Spring Boot 通过这些机制简化了开发配置流程,提升了开发效率。
87 17
springboot自动配置原理

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等