【视频&交流平台】
http://study.163.com/course/introduction.htm?courseId=1004329008&utm_campaign=commission&utm_source=400000000155061&utm_medium=share
http://study.163.com/course/introduction.htm?courseId=1004638001&utm_campaign=commission&utm_source=400000000155061&utm_medium=share
https://gitee.com/happyangellxq520/spring-boot
http://412887952-qq-com.iteye.com/blog/2321532
需求缘起
我们在开发过程中,通常都会定义大量的JavaBean,然后通过IDE去生成其属性的构造器、getter、setter、equals、hashcode、toString方法,当要对某个属性进行改变时,比如命名、类型等,都需要重新去生成上面提到的这些方法,那Java中有没有一种方式能够避免这种重复的劳动呢?Lombok就是为此而生的。
本节大纲:
一、Lombok简介
二、Lombok安装
三、注解介绍
一、Lombok简介
Lombok是一个可以通过简单的注解形式来帮助我们简化消除一些必须有但显得很臃肿的Java代码的工具,通过使用对应的注解,可以在编译源码的时候生成对应的方法。
官方地址:https://projectlombok.org/。
github地址:https://github.com/rzwitserloot/lombok。
二、Lombok安装
2.1 下载lombok.jar
从地址https://projectlombok.org/download 下载lombok.jar,当前最新的版本是1.16.18。
2.2 运行lombok.jar
运行Lombok.jar:java -jar D:\lombok.jar(D:\lombok.jar这是windows下lombok.jar所在的位置)。
数秒后将弹出一框,以确认IDE的安装路径(选择IDE的路径,这里使用的Eclipse)
确认完eclipse的安装路径后,点击install/update按钮,即可安装完成
2.3 验证是否安装成功
安装完成之后,请确认eclipse安装路径下是否多了一个lombok.jar包,并且其
配置文件eclipse.ini中是否 添加了如下内容:
-javaagent:lombok.jar
-Xbootclasspath/a:lombok.jar
如果上面的答案均为true,那么恭喜你已经安装成功,否则将缺少的部分添加到相应的位置即可。
2.4 重启IDE
重启IDE,这里是重启eclipse,到这里就可以体验lombok带来的快乐了。
三、注解介绍
在这里介绍几个常用的注解,更多的可以参考:https://projectlombok.org/features/index.html
(1)@Getter / @Setter
可以作用在类上和属性上,放在类上,会对所有的非静态(non-static)属性生成Getter/Setter方法,放在属性上,会对该属性生成Getter/Setter方法。并可以指定Getter/Setter方法的访问级别。
(2)@EqualsAndHashCode
默认情况下,会使用所有非瞬态(non-transient)和非静态(non-static)字段来生成equals和hascode方法,也可以指定具体使用哪些属性。
(3)@ToString
生成toString方法,默认情况下,会输出类名、所有属性,属性会按照顺序输出,以逗号分割。
(4)@NoArgsConstructor, @RequiredArgsConstructor and @AllArgsConstructor
无参构造器、部分参数构造器、全参构造器,当我们需要重载多个构造器的时候,Lombok就无能为力了。
(5)@Data
@ToString, @EqualsAndHashCode, 所有属性的@Getter, 所有non-final属性的@Setter和@RequiredArgsConstructor的组合,通常情况下,我们使用这个注解就足够了。
本篇文章参考如下文章:
eclipse中使用Lombok:https://segmentfault.com/n/1330000003805656
Java奇淫巧技之Lombok:http://blog.csdn.net/ghsau/article/details/52334762
相关推荐
【Spring Boot 概述】 Spring Boot 是一个由 Pivotal 团队开发的 Java 框架,旨在简化 Spring 应用程序的初始搭建以及开发过程。它通过提供默认配置来消除大量的样板代码,使开发者可以更快速地构建高质量的微服务...
基于Spring Boot的人事管理系统 (HRMS) 概述 通过GDOU实验性课程作业,搭建的前后端分离的项目,具有系统权限管理、人力资源档案管理、薪酬管理功能。权限细化到按钮级别。 特性 依赖少,入门简单 Spring ...
项目采用Spring Boot框架,结合MyBatis进行数据库操作,使用H2作为嵌入式数据库,Flyway进行数据库版本管理,Lombok简化代码,Bootstrap进行前端设计,Github OAuth进行用户认证,UFile进行文件存储。 在线演示...
## Spring Boot 概述 Spring Boot简化了基于Spring的应用开发,通过少量的代码就能创建一个独立的、产品级别的Spring应用。 Spring Boot为Spring平台及第三方库提供开箱即用的设置,这样你就可以有条不紊地开始。...
基于 Spring Boot 的短视频平台系统 概述 项目结合了多个现代化的开发工具和框架,包括 MybatisPlus、Lombok、Hutool 等,以便于快速开发、简化代码和提高安全性。项目结构采用了前后端分离的模式,前端使用 Vue ...
1. **Spring Boot 概述** Spring Boot 基于 Spring Framework,提供了“开箱即用”的特性,通过 starter POMs(依赖管理)帮助我们快速构建应用程序。它默认配置了很多常见服务,如数据源、JPA、定时任务等,减少了...
一、Spring Boot概述 Spring Boot是由Pivotal团队提供的全新框架,它简化了Spring应用的初始搭建以及开发过程。其核心特性是可以启动独立的、生产级别的Java应用,只需“零”配置即可运行。Spring Boot集成了大量的...
# 基于Spring Boot的二维码登录系统 ## 项目概述 本项目是一个基于Spring Boot框架的二维码登录系统,集成了多种业务案例,如二维码登录、微信扫码登录、微信支付、报表生成、文件下载等。项目旨在提供一个可以直接...
<groupId>org.springframework.boot <artifactId>spring-boot-starter-parent <version>2.7.5 <relativePath/> <!-- lookup parent from repository --> <groupId>com.wms</groupId> ...
#### 一、Spring Boot 概述 Spring Boot 是由 Pivotal 团队提供的新一代 Spring 应用程序框架,它的主要目标是简化 Spring 应用的初始搭建和开发过程。通过使用特定的配置方式,Spring Boot 减少了大量的样板式代码...
基于Spring Boot的企业微信点餐系统 项目概述 本项目是一个基于Spring Boot开发的企业微信点餐系统,旨在为买家和卖家提供便捷的点餐和管理服务。系统分为买家端和卖家端,涵盖了商品管理、订单管理、支付和退款等...
基于Spring Boot的智能停车管理系统 项目概述 智能停车管理系统是一个基于Spring Boot和Vue.js构建的现代化应用,旨在提供高效、便捷的停车管理解决方案。系统集成了多种功能,包括车位管理、订单处理、支付与退款...
后端技术栈Spring Boot, Spring Data JPA, Lombok 数据库MySQL 主要功能学生登录、课程管理、练习管理、消息管理、问题与回复管理等 主要模块 1. 学生管理 登录与注册学生可以通过用户名和密码进行登录和...
基于Spring Boot的WebPOS系统 欢迎来到WebPOS系统项目!这是一个基于Spring Boot构建的现代化电子商务平台,专注于提供高效、可扩展的在线购物体验。项目采用微服务架构,结合响应式编程和数据库集成,确保系统...
基于Spring Boot的考试管理系统 项目概述 本项目是一个基于Spring Boot的考试管理系统,旨在提供一个高效、易用的平台来管理考试、学生信息、教师信息以及相关的教育资源。系统集成了多种功能,包括用户管理、...
基于Spring Boot的秒杀系统 项目概述 本项目是一个基于Spring Boot的高并发秒杀系统,集成了MyBatis Plus、Redis、RabbitMQ等技术,旨在提供一个高效、稳定的秒杀解决方案。系统涵盖了用户管理、商品管理、订单...
基于Spring Boot框架的CMS服务器管理系统 项目概述 本项目是一个基于Spring Boot框架的内容管理系统(CMS)服务器,旨在提供一个高效、可扩展的后端服务,支持用户管理、学生和教师信息处理等功能。通过集成...
- **项目搭建**:创建Spring Boot项目,选择依赖项,如Web、Lombok等。 - **POM文件**:配置依赖项。 - **Application.yml**:配置文件,定义服务端口等信息。 - **主程序**:启动类,标注@SpringBootApplication...
<groupId>org.mybatis.spring.boot <artifactId>mybatis-spring-boot-starter <version>2.1.4 <!-- MySQL驱动 --> <groupId>mysql <artifactId>mysql-connector-java <version>8.0.26 <!-- Lombok -->...
ShardingSphere实现分库 + 读写分离 有关ShardingSphere实现分库分表前面写了7篇博客...spring-boot-sharding-ssphere # 父工程 | #实现读写分离功能 ---db-read-write | #实现分表功能 ---sub-table | #实现分