当前位置: 首页 > news >正文

05-Spring Boot工程中简化开发的方式Lombok和dev-tools

简化开发的方式Lombok和dev-tools

Lombok常用注解

Lombok用标签方式代替构造器、getter/setter、toString()等重复代码, 在程序编译的时候自动生成这些代码

注解名功能
@NoArgsConstructor生成无参构造方法
@AllArgsConstructor生产含所有属性的有参构造方法,如果不希望含所有属性则需要手动生成
@Getter生成属性的getter方法
@Setter生成属性的setter方法
@ToString生成toString方法
@EqualsAndHashCode生成equals和HashCode方法
callSuper = true表示用自己的属性和从父类继承的属性来生成hashcode
callSuper = false(默认)表示只用自己的属性来生成hashcode
@Data除了不能生成有参构造方法,以上注解能生成的@Data都能生成
@Slf4j注入log日志类,简化日志开发, log.info()在控制台上输出信息,方便调试
@Accessors在生成 getter 和 setter 方法时做一些相关的设置
作用于类上时修饰类中所有字段,当作用于具体字段时只对该字段有效
chain属性值默认为false,当该值为true时对应字段的setter方法调用后会返回当前对象即可以实现链式调用

使用步骤

第一步引入依赖org.projectlombok: Spring Boot父工程中已经指定了Lombok的版本号

 <dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId>
</dependency>

第二步: 搜索并安装Lombok插件
在这里插入图片描述

第三步: 测试Lombok提供的相关注解的功能

@Data
public class User {private String name;private Integer age;private Pet pet;public User(String name,Integer age){this.name = name;this.age = age;}
}@Slf4j
@RestController
public class HelloController {@RequestMapping("/hello")public String handle01(@RequestParam("name") String name){log.info("请求进来了....");return "Hello, Spring Boot 2!"+"你好:"+name;}
}

dev-tools依赖

热更新: 在工程中添加spring-boot-devtools依赖,这样当项目或者页面源代码修改以后按住Ctrl+F9可以快速编译项目并重新加载

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><optional>true</optional></dependency>
</dependencies>
http://www.lryc.cn/news/237260.html

相关文章:

  • AIGC 技术在淘淘秀场景的探索与实践
  • ANSYS网格无关性检查
  • 设计模式-责任链-笔记
  • SpringMvc请求原理流程
  • 【开源】基于Vue.js的音乐偏好度推荐系统的设计和实现
  • 采集1688整店商品(店铺所有商品、店铺列表api)
  • IObit Unlocker丨解除占用程序软件
  • 开发一款小程序游戏需要多少钱?
  • 基于Vue+SpringBoot的校园电商物流云平台开源项目
  • 庖丁解牛:NIO核心概念与机制详解 03 _ 缓冲区分配、包装和分片
  • 002 OpenCV dft 傅里叶变换
  • 力扣:171. Excel 表列序号(Python3)
  • C++中结构体的初始化
  • vue3+vite+ts 发布自定义组件到npm
  • mybatis使用xml形式配置
  • 开源简历生成器OpenResume
  • AI变现之Gpts搞流量+赚钱
  • 音视频项目—基于FFmpeg和SDL的音视频播放器解析(十六)
  • Elasticsearch文档操作
  • 聊一聊go的单元测试(goconvey、gomonkey、gomock)
  • Positive Technologies 利用 PT Cloud Application Firewall 保护中小型企业的网络资源
  • 深入解析序列模型:全面阐释 RNN、LSTM 与 Seq2Seq 的秘密
  • vue项目本地开发构建速度优化 hard-source-webpack-plugin
  • 燕之屋通过港交所聆讯:苦战IPO十余年,黄健等人提前精准套现
  • 【51单片机系列】C51基础
  • openssl1.0.2版本Windows安装问题
  • 【Java 进阶篇】Ajax 实现——原生JS方式
  • Spring Cloud Stream实践
  • 高精度算法【Java】(待更新中~)
  • 说一说HTTP1.0、1.1、2.0版本区别和优化