SpringBoot 三大开发工具,你都用过么?
大家好,我是D哥
点击关注下方公众号,Java面试资料 都在这里
作者:键盘歌唱家
来源:blog.csdn.net/MoastAll/article/details/108237154
# SpringBoot Dedevtools
他是一个让SpringBoot支持热部署的工具,下面是引用的方法
要么在创建项目的时候直接勾选下面的配置:
要么给springBoot项目添加下面的依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
idea修改完代码后再按下 ctrl + f9 使其重新编译一下,即完成了热部署功能
eclipse是按ctrl + s保存 即可自动编译。
如果你想一修改代码就自动重新编译,无需按ctrl+f9。只需要下面的操作:
1、 在idea的setting中把下面的勾都打上
2、 进入pom.xml,在build的反标签后给个光标,然后按Alt+Shift+ctrl+/
3、 然后勾选下面的东西,接着重启idea即可
# Lombok
Lombok是简化JavaBean开发的工具,让开发者省去构造器,getter,setter的书写。
在项目初始化时勾选下面的配置,即可使用Lombok
或者在项目中导入下面的依赖:
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
使用时,idea还需要下载下面的插件:
下面的使用的例子
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@AllArgsConstructor//全参构造器
@NoArgsConstructor//无参构造器
@Data//getter + setter
public class User {
private Long id;
private String name;
private Integer age;
private String email;
}
# Spring Configuration Processor
该工具是给实体类的属性注入开启提示,自我感觉该工具意义不是特别大!
因为SpringBoot存在属性注入,比如下面的实体类:
package org.lzl.HelloWorld.entity;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
/**
* @author Lenovo
*
*/
@Component
@ConfigurationProperties(prefix = "mypet")
public class Pet {
private String nickName;
private String strain;
public String getNickName() {
return nickName;
}
public void setNickName(String nickName) {
this.nickName = nickName;
}
public String getStrain() {
return strain;
}
public void setStrain(String strain) {
this.strain = strain;
}
@Override
public String toString() {
return "Pet [nickName=" + nickName + ", strain=" + strain + "]";
}
}
想要在application.properties和application.yml中给mypet注入属性,却没有任何的提示,为了解决这一问题,我们在创建SpringBoot的时候勾选下面的场景:
或者直接在项目中添加下面的依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
并在build的标签中排除对该工具的打包:(减少打成jar包的大小)
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<excludes>
<exclude>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
D哥也建了一个技术群,主要针对一些新的技术和开源项目值不值得去研究和IDEA使用的“骚操作”,有兴趣入群的同学,可以长扫描区域二维码,一定要注意事项:城市+昵称+技术方向,根据格式备注,可快速通过。
▲长按扫描