乐趣区

Spring-Boot-2x-二How-Hello-World-热部署

本篇摘要

上一篇文章,我们构建了一个 HelloWorld 的程序,现在,我们来看一下这个程序,下面是我们这一节要分析的点。

  • spring-boot-starter-boot
  • @SpringBootApplication
  • 热加载

spring-boot-starter-boot

我们这个程序是使用 maven 进行构建的,我们去看 pom.xml 文件可以发现它继承自这个 pom,这是 Maven 的一个独有的部件,它有啥用呢?

  • Java 1.8 作为默认的编译器级别。
  • UTF – 8 编码。

  • 一个继承自 spring-boot-dependencies pom 的依赖管理部分,管理通用依赖项的版本。这个依赖项管理可以在自己的 pom 中使用这些依赖项时省略 < version> 标记。

  • 合理的插件配置(exec 插件,git commit id 和 shade 等等,这里不再多说,希望深入了解的可以寄几去看一下????)

  • 合理的资源过滤(例如:application.properties 和 application.yml)。包含特定于概要文件的文件(例如:application-dev.properties 和 application-dev.yml)

@SpringBootApplication

我们去看 BootApplication 启动类,可以发现启动类上有这样的一个注解:

本着刨根问底的态度,我们去看一下,这个注解类中都包含了什么:

可以发现这个注解是有多个注解组合而成(@SpringBootConfiguration@EnableAutoConfiguration@ComponentScan
SpringBootApplication启动时会默认扫描主类当前包及子包,如果需要扫描主类当前包外的其他包或不扫描当前包下的特定包或类,可通过上面的被圈住的属性来设置。

现在我们来加入这个配置,摁住 ctrl 键就可以定位到这个包。
如果我们设置了 exclude 的属性就不会把这个类加入到 Spring 管理的容器中,这里需要注意一点的问题就是 exclude 的必须是 auto-configuration 的类,否则启动会报错。至于什么是auto-configuration,我们会在后面进行讲解。

热加载

接下来,我来介绍一款开发的利器:DevTools,他可以很大的提升我们开发的效率,那么在 IDEA 的环境下如何去使用呢?

第一步:添加依赖

第二步:在配置文件中配置监听路径(可省略):

第三步:更改 IDEA 设置:
首先打开设置窗口,进行以下设置

然后,回到页面摁住Ctrl + Shift + Alt + /(Mac 下是Command + Shift + Option + /),会出现以下的页面:

点击 Registry 后,会出现以下页面进行配置:

到这里就算是大功告成了~

原创文章,文笔有限,才疏学浅,文中若有不正之处,万望告知


公众号

退出移动版