概览
什么是 Spring Boot?
Spring Boot 使创立独立的、生产级的基于 Spring 的应用程序变得很容易,您能够“间接运行”这些应用程序。Spring Boot 优先于配置的常规,旨在让您尽快启动和运行。基于 Spring Framework 根底之上,是新一代的 Web 利用程序开发框架,下图来理解下 Spring Boot 的全貌:
Spring Boot 劣势
- 主动拆卸
Spring Boot 所提倡的约定优于配置(Convention over Configuration)设计理念,和以前应用 Spring MVC 框架相比,简化一大堆 XML 文件的配置和 Maven 依赖的配置,把本来须要开发人员指定的各种配置项设置了默认值,配合代码生成器,极大升高了 Web 我的项目的开发的门槛,一会咱们将会通过一个 demo 来体验下 Spring Boot 来搭建一个 web 服务的弱小之处,真香 \~\~\~
- 监控 Actuator
相比拟传统的 Spring MVC 框架,Spring Boot 框架引入的另外一大亮点就是内置的 Actuator 监控组件,通过 Actuator 监控组件咱们能够查看包含主动拆卸在内的应用程序的详细信息、JVM 内存应用状况、垃圾回收信息等等 \~
- 内嵌 Servlet 容器
除了主动拆卸和监控后,Spring Boot 框架内嵌 Servlet 容器(蕴含 Tomcat、Jetty 等反对 Servlet 标准的多款传统 Web 容器),通过内嵌的 Servlet 容器机制,开发人员想要启动 Web 服务,只须要执行一行 java -jar 命令就能够了,无需以 war 包模式部署我的项目,升高了运维部署我的项目的复杂度。
疾速入门
我通过”Hello World“demo 我的项目来体验下 Spring Boot 的弱小之处,在开始之前咱们须要先配置好开发环境以及开发工具:
- JDK 1.8+
Spring Boot 2.x 要求 JDK 1.8 环境及以上版本。另外,Spring Boot 2.x 只兼容 Spring Framework 5.0 及以上版本。
- Maven 3.2+
为 Spring Boot 2.x 提供了相干依赖构建工具是 Maven,版本须要 3.2 及以上版本。应用 Gradle 则须要 1.12 及以上版本。
- IDEA
举荐应用 IntelliJ IDEA,也能够应用 Eclipse 作为开发工具,另外本我的项目的源码将会在 github 开源,如果须要下载还须要装置 Git。
应用 Spring Initializr 构建我的项目
- 拜访 http://start.spring.io/
- 抉择构建工具,举荐应用 Maven Project、Java、Spring Boot 2.4.1,填写我的项目的根本信息以及我的项目的依赖信息,增加 Spring Web 依赖即可,参考如下图所示:
- 点击 Generate 生成下载我的项目压缩包
- 解压缩后,应用 idea 导入我的项目,File–>New–>Project from Existing Sources…–> 抉择解压缩的目录,点击【Open】,抉择 Maven 构建工具点击【Finish】即可,略微等下,这时 Idea 将会下载我的项目所须要的依赖包。
应用 IDEA 构建我的项目
- 抉择 File –> New –> Project… 弹出新建我的项目的框
- 抉择 Spring Initializr, 点击【Next】
- 填写我的项目的根本信息,点击【Next】
- 抉择我的项目的依赖信息,同样咱们抉择 Spring Web 依赖,点击【Next】
- 填写项目名称和存储门路【Finish】即可。
我的项目构造解析
如下面所示,Spring Boot 我的项目的根本构造蕴含三个目录
- src/main/java
程序的开发目录和主程序的入口,HelloWorldApplication 在该目录下,带有 main() 办法的类,它是整个 SpringBoot 入口,用来启动应用程序。
- src/main/resources
寄存资源和配置文件,static 目录下会寄存动态的文件(css,js 等),templates 目录下会寄存页面的模板文件,application.properties 默认会生成一个空的配置文件,依据我的项目开发须要增加配置我的项目。
- src/man/test
用来寄存单元测试我的项目的代码,HelloWorldApplicationTests,默认生成一个空的单元测试类,它加载了一个应用 Spring Boot 字典配置性能的 Spring 应用程序上下文
编写第一个 Controller 代码
@RestController
public class HelloWorldController {@RequestMapping("/hello")
public String hello() {return "Hello World";}
}
@RestController 注解是 @Controller 和 @ResponseBody 的组合注解,示意 Controller 下的办法都是 json 格局输入。
启动 HelloWorldApplication 类的 main 办法,应用浏览器拜访 http://localhost:8080/hello 这个端点,页面就会输入 Hello World,是不是超级简略 \~
我的项目源码
github:https://github.com/dragon8844…
最初说一句
如果这篇文章对您有所帮忙,或者有所启发的话,帮忙关注一下,您的反对是我保持写作最大的能源,多谢反对。
此外,关注公众号:彩色的灯塔,专一 Java 后端技术分享,涵盖 Spring,Spring Boot,SpringCloud,Docker,Kubernetes 中间件等技术。