查看原文
其他

SpringBoot 三大开发工具,你都用过么?

点击关注 👉 顶级架构师 2022-07-01
推荐关注
顶级架构师后台回复 1024 有特别礼包


来源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的书写。另外,搜索公众号GitHub猿后台回复“搜索”,获取一份惊喜礼包。

在项目初始化时勾选下面的配置,即可使用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.propertiesapplication.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>

最后给读者整理了一份BAT大厂面试真题,需要的可扫码回复“面试题”即可获取。


公众号后台回复 架构 或者 架构整洁 有惊喜礼包!顶级架构师交流群

 「顶级架构师」建立了读者架构师交流群,大家可以添加小编微信进行加群。欢迎有想法、乐于分享的朋友们一起交流学习。

扫描添加好友邀你进架构师群,加我时注明姓名+公司+职位】


版权申明:内容来源网络,版权归原作者所有。如有侵权烦请告知,我们会立即删除并表示歉意。谢谢。

猜你还想看

推荐一套开源通用后台管理系统(附源码)

看看人家那 IM 即时通讯系统,那叫一个优雅(附源码)

面试官:生成订单30分钟未支付,则自动取消,该怎么实现?

阿里技术专家:一文教你高效画出技术架构图

16个 Redis 常见使用场景,面试有内容聊啦

面试官问:MySQL的自增 ID 用完了,怎么办?

知名国产论坛,凉了!!!!

一款神仙接私活低代码平台,吊到不行

一个很酷的家庭理财系统

软件架构设计分层模型和构图思考

五人基础架构组如何掌控千万DAU云原生架构

系统架构性能问题诊断及优化思路,纯干货!


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存