SpringBoot
官网(中文):Spring Boot 中文文档
Spring Boot是由Pivotal团队提供的一套开源框架,可以简化spring应用的创建及部署。它提供了丰富的Spring模块化支持,可以帮助开发者更轻松快捷地构建出企业级应用。Spring Boot通过自动配置功能,降低了复杂性,同时支持基于JVM的多种开源框架,可以缩短开发时间,使开发更加简单和高效。
简介:
Spring Boot帮助你创建可以运行的独立的、基于Spring的生产级应用程序。 我们对Spring平台和第三方库采取了有主见的观点,这样你就能以最少的麻烦开始工作。 大多数Spring Boot应用程序只需要很少的Spring配置。
你可以使用Spring Boot来创建Java应用程序,可以通过使用 java -jar
或更传统的war部署来启动。
我们的主要目标是。
- 为所有的Spring开发提供一个根本性的更快、更广泛的入门体验。
- 开箱即用,但随着需求开始偏离默认值,请迅速摆脱困境。
- 提供一系列大类项目常见的非功能特性(如嵌入式服务器、安全、度量、健康检查和外部化配置)。
- 绝对没有代码生成(当不以原生镜像为目标时),也不要求XML配置。
系统要求:
Spring Boot 3.2.0-SNAPSHOT 需要 Java 17 ,并且可以兼容到Java 20,包括Java 20。还需要 Spring Framework 6.1.0-M1 或以上版本。
为以下构建工具提供了明确的构建支持。
构建工具 | 版本 |
---|---|
Maven | 3.6.3 及其以上 |
Gradle | 7.x (7.5 及其以上) 和 8.x |
2.1. Servlet 容器
Spring Boot支持以下嵌入式Servlet容器。
Servlet 容器 | Servlet 版本 |
---|---|
Tomcat 10.0 | 5.0 |
Jetty 11.0 | 5.1 |
Undertow 2.2 (Jakarta EE 9 variant) | 5.0 |
你也可以将Spring Boot应用部署到任何兼容Servlet 5.0+的容器中。
2.2. GraalVM 原生镜像
Spring Boot应用程序可以通过使用 GraalVM 22.3 或以上版本 转换为原生镜像。
镜像可以通过 本地构建工具 Gradle/Maven插件或GraalVM提供的 native-image
工具来创建。你也可以使用 native-image Paketo buildpack 来创建原生镜像。
支持以下版本。
名称 | 版本 |
---|---|
GraalVM Community | 22.3 |
Native Build Tools | 0.9.23 |
微服务
微服务架构——马丁弗勒(中文版论文完整版)_马丁福勒微服务论文-CSDN博客
可以研读一下这位大佬的论文,了解一下微服务的理论,将来作为装x的谈资。
第一个springBoot项目
方法一
创建第一个springBoot项目,首先从官网下手。
Spring | Home
选择SpringBoot
reference代表参考文档,API可以参看项目中的依赖。
点击下面的的FENERATE按钮就可以下载到一个压缩包,解压并在idea中打开,就可以启动项目。
方法二
直接在idea中创建
如果sdk和java的版本选择的不一致,在运行项目时会报错
无效的源发行版 (版本号)
springBoot版本要选择官网上显示的稳定版本;
在这里我们可能发现我们的maven爆红,这个可能是因为maven的镜像资源问题在maven文件夹的setting.xml文件中添加正确的镜像才能成功下载到全部依赖,作者在这里因为用了一个半正确的镜像,项目能够运行但是maven一直爆红,尝试了一段时间才发现是镜像的问题
<!-- 阿里镜像 -->
<mirror><id>alimaven</id><mirrorOf>central</mirrorOf><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
<mirror><id>alimaven</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOf>central</mirrorOf>
</mirror>
<mirror><id>central</id><name>Maven Repository Switchboard</name><url>http://repo1.maven.org/maven2/</url><mirrorOf>central</mirrorOf>
</mirror>
<mirror><id>repo2</id><mirrorOf>central</mirrorOf><name>Human Readable Name for this Mirror.</name><url>http://repo2.maven.org/maven2/</url>
</mirror>
<mirror><id>ibiblio</id><mirrorOf>central</mirrorOf><name>Human Readable Name for this Mirror.</name><url>http://mirrors.ibiblio.org/pub/mirrors/maven2/</url>
</mirror>
<mirror><id>jboss-public-repository-group</id><mirrorOf>central</mirrorOf><name>JBoss Public Repository Group</name><url>http://repository.jboss.org/nexus/content/groups/public</url>
</mirror>
<mirror><id>google-maven-central</id><name>Google Maven Central</name><url>https://maven-central.storage.googleapis.com</url><mirrorOf>central</mirrorOf>
</mirror>
<!-- 中央仓库在中国的镜像 -->
<mirror><id>maven.net.cn</id><name>oneof the central mirrors in china</name><url>http://maven.net.cn/content/groups/public/</url><mirrorOf>central</mirrorOf>
</mirror>
注意建包时的目录结构我们首先写一个Controller
package com.kang.start.Controller;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
public class startController {@RequestMapping("/start")public String start(){return "Hello world";}
}
在Application中点击运行
成功运行,访问http://localhost:8080/start
成功运行,下面介绍一下这个架构的组成
首先从我们最熟悉的pom.xml文件下手
现在我们的Tomcat是内嵌在项目中的我们在用maven打包以后会得到一个jar包,我们点击jar包就可以直接运行,在浏览器中访问我们创建的项目。
当然这个jar包运行起来以后不容易关闭我们可以在命令行输入
netstat -aon | findstr :8080
查看那个程序在使用端口,然后关闭它
taskkill /PID 19160 /F
学习一些简单的配置比如说:端口的配置
我们还可以自定义banner,推荐一个网站找banner,有点卡,可能访问花的时间长一点;
使用方法:在这个网站自定义或者在库里面搜索
Spring Boot banner在线生成工具,制作下载中文banner.txt,修改替换banner.txt文字实现自定义中文ascii,个性化启动banner-bootschool.net
将得到的内容放到banner.txt文件中。启动的时候就会出现自定义的banner
## ########################## ## # ## ######### ## # # ############## ## # # ############## ######### ## # # ## # ## # ## # # # # ## # # # ## # # # #
# # # # # ################
效果: