Spring Boot
1.0、参考
1.1、Spring Boot简介

Spring Boot是为了简化Spring应用搭建和部署而产生的。

Spring Boot并不是为了取代已有的技术,而是高度整合了这些已有的技术, 让他们使用起来更容易。让开发者更关注业务,而不是与业务无关的那些细节。

Spring Boot更强调约定大于配置代码优于配置的理念, 你可以几乎不用配置就能运行起来一个简单的Spring Boot应用。 虽然Spring Boot也支持使用配置文件的方式进行配置,但是它更希望你用基于代码(使用注解)的方式进行配置。

Spring Boot的这种方式在前端开发中早已大行其道,在前端开发中,一切配置都是代码。Java界最早尝试这种方式的是gradle, 这也是gradle大受欢迎的原因。

1.2、开发Spring Boot项目的IDE
1.3、Spring Initializr

Spring Initializr是创建Spring Boot项目的Web服务。

Spring Initializr官网:https://start.spring.io

Spring InitializrGitHub上的网址:https://github.com/spring-io/start.spring.io

Spring Initializr被所有支持Spring BootIDE的插件调用, 以创建Spring Boot应用的模板工程。

如果感觉IDE的插件创建Spring Boot工程特别慢的话,你也可以自己搭建该服务。

1.4、Spring Boot CLI
1.5、Spring Boot的代码热部署

build.gradle.kts中加入如下的配置:

//https://github.com/spring-projects/spring-boot/issues/16251
val developmentOnly = configurations.create("developmentOnly")
configurations.runtimeClasspath.get().extendsFrom(developmentOnly)

dependencies {
    developmentOnly("org.springframework.boot:spring-boot-devtools")
}

Eclipse中,修改代码 → 保存代码。Eclipse保存代码之后会自动编译代码。这样就重新部署了。

IDEA中,修改代码 → 保存代码 → 编译代码。IDEA保存代码之后不会自动编译代码,如果想要在保存代码之后自动编译代码,你需要做个设置。设置参考

1.6、Spring Boot的内嵌Servlet容器选择

Spring Boot提供了3种内嵌容器的选择:

Tomcat

spring-boot-starter-tomcat

spring-boot-starter-web

jettyspring-boot-starter-jetty
undertowspring-boot-starter-undertow

选择使用哪个应该根据业务来决定。每种Servlet容器都有其独特的一面。

1.7、Spring Boot的配置

Spring Boot的配置方式有3种。

  • 使用代码 + 注解进行配置
  • 使用配置文件进行配置
  • 使用命令传参进行配置
1.7.1、使用代码 + 注解进行配置

绝大多数配置使用注解即可配置好,少部分需要写少量的代码。

1.7.2、使用配置文件进行配置

有些配置写在配置文件中更好。

1.7.3、使用配置文件进行配置

有时候通过在命令行中传入参数更好。