概览
什么是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代码
@RestControllerpublic 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中间件等技术。