SpringBoot2.0.0参考手册

c#小王子 c#小王子 2022-04-03 371 Java

Part I:Spring Boot 文档


1. 关于文档

Sring 参考文档可以通过 htmlpdf epub 三种形式得到。最新的文档可以从docs.spring.io/spring-boot/docs/current/reference 上得到。

本文档无论是电子版还是打印版,只要你不收取任何费用且在每个副本中包含了版权声明,你就可以自由使用本文档的副本或分发给其它人。


2. 获得帮助

如果在使用 Spring Boot 中有不会的地方,我们很乐意帮忙!

 尝试 How-to’s(文档第九部分),里面有最常见问题的解决方案。

 学习 Spring 基础知识——Spring Boot 建立在许多其它的 Spring 工程之上,查看 spring.io 网站,上面有大量的参考文档。如果你刚开始使用

Spring,尝试看这些指南中的一个。

 问问题——我们监控着stackoverflow.com中标签为spring-boot的问题。

 报告 Spring Boot 中的 bugs 请到github.com/spring-projects/spring-boot/issues。Spring Boot 是开源的,包括文档!如果你在文档中发现了问题;或你想改进它们,请参与进去。


3. 第一步

如果你准备开始学习 Spring Boot 或通常来说的 Spring,从这里开始!

 从零开始: 概述 | 要求 | 安装

 学习指南: 第一部分 | 第二部分

 运行例子: 第一部分 | 第二部分4. 使用 Spring Boot


准备好开始使用 Spring Boot 了?不用担心。

 构建系统:Maven | Gradle | Ant | Starters 最佳实践:Code Structure | @Configuration |

@EnableAutoConfiguration | Beans and Dependency Injection

 运行代码:IDE | Packaged | Maven | Gradle

 打包应用:Production jars

 Spring Boot 命令行:Using the CLI


5. 了解 Spring Boot 特性

需要更多关于 Spring Boot 核心特性的细节?看下面。

 核心特性:SpringApplication | External Configuration | Profiles | Logging

 Web 应用:MVC | Embedded Containers

 消息:Overview | JMS

 测试:Overview | Boot Applications | Utils

 扩展:Auto-configuration | @Conditions


6. 变为产品

当你准备将你的 Spring Boot 应用变成产品时,给你推荐一些你可能喜欢的小技巧。

 管理端点:Overview | Customization

 链接选择:HTTP | JMX | SSH

 监控:Metrics | Auditing | Tracing | Process


7. 高级课题

最后,我们有一些课题给高级用户。

 部署 Spring Boot 应用:Cloud Deployment | OS Service

 构建工具插件:Maven | Gradle

 附录:Application Properties | Auto-configuration classes | Executable Jars


Part II 开始

如果你刚开始学习 Spring Boot 或通常所说的 Spring,这部分就是为你准备的!这部分中我们回答了基本的”what?”,”how”,”why?”问题,并在安装说明中介绍 Spring Boot。我们将构建第一个 Spring Boot 应用,讨论一些我们遵循的核心原则。


8. Spring Boot 介绍

Spring Boot 使创建独立的、产品级的、基于 Spring 的应用变得更容易,你只需要运行 run 即可。我们采用不变的 Spring 平台和第三方库,因此你可以几乎无差别的使用 Spring Boot。大多数 Spring Boot 应用只需要很少的 Spring 配置。


你可以使用 Spring Boot 创建 Java 应用,用 java-jar 或更传统的 war 包来部署应用。我们也提供了运行”Spring 脚本”的命令行工具。我们的主要目标是:

 为所有 Spring 开发者提供一个从根本上更迅速可用的入门经验。

 坚持开箱即用,当默认设置不满足需求时可以快速避免默认设置。

 为具有许多类的工程提供一系列常用的非功能特性(例如嵌入式服务器、安全、度量、健康检查、外部配置)。

 绝对没有 XML 配置代码产生和 XML 配置需求。


9. 系统需求

By default, Spring Boot 2.0.0.BUILD-SNAPSHOT requires Java 7 and Spring Framework 5.0.0.BUILD-SNAPSHOT or above. You can use Spring Boot with Java 6 with some additional configuration. See Section 80.11, “How to use Java 6” for more details. Explicit build support is provided for Maven (3.2+) and Gradle (1.12 or 2.x). Gradle 3 is not supported.默认情况下,Spring Boot 2.0.0.BUILD-SNAPSHOT 需要 Java 7 和 Spring Framework 5.0.0.BUILD-SNAPSHOT 及以上。你可以通过一些额外配置在 Java 6下使用 Spring Boot。更多细节请看 80.11 小节,”怎样使用 Java 6”。明确的构建支持有 Maven (3.2+)和 Gradle (1.12 or 2.x),不支持 Gradle 3。Although you can use Spring Boot with Java 6 or 7, we generally recommend Java 8 if at all possible.虽然你可以在 Java 6 或 Java 7 下使用 Spring Boot,但我们建议尽可能的使用Java 8。


9.1 Servlet 容器

下面的嵌入式 servlet 容器支持开箱即用:


Name

Servlet Version Java Version

Tomcat 8

3.1

Java 7+

Tomcat 7

3.0

Java 6+

Jetty 9.3

3.1

Java 8+

Jetty 9.2

3.1

Java 7+

Jetty 8

3.0

Java 6+

Undertow 1.3 3.1

Java 7+

你也可以部署 Spring Boot 应用到任何兼容 Servlet 3.0+的容器。


10. 安装 Spring Boot

Spring Boot 可以和”经典”的 Java 开发工具一起使用,也可作为一个命令行工具来进行安装。不管你是需要 Java SDK v.16 还是更高版本,在开始之前你应该检查你当前安装的 Java 版本。$ java -version如果你是 Java 开发的新手,或你只想尝试 Spring Boot,你可能首先想试一下Spring Boot CLI,否则,请读”经典”的安装说明。虽然 Spring Boot 兼容 Java 1.6,但可能的话,你应该考虑使用 Java 的最新版本。


10.1 Java 开发者的安装说明

你可以使用 Spring Boot 像使用任何标准 Java 库一样。简单的在你的 classpath中包含恰当 spring-boot-*.jar 即可。Spring Boot 不需要任何特定的工具集成,因此你可以使用任何 IDE 或文本编辑器;Spring Boot 应用没有什么特别的,你可以像其它的 Java 程序一样来运行和调试。

尽管你可以只拷贝 Spring Boot 的 jars,但通常我们建议你使用一个支持依赖管理的构建工具(例如 Maven 或 Gradle)。


10.1.1 Maven 安装

Spring Boot 兼容 Apache Maven 3.2 或以上。如果你没有安装 Maven,你可以根

maven.apache.org 的说明来安装。在许多操作系统上 Maven 都能通过包管理器来安装。如果你是一个 OSX Homebrew用户可以通过 brew install maven 安装。Ubuntu 用户可以通过 sudo apt-get install maven 安装。


Spring Boot 依赖使用 org.springframework.boot groupId。通常你的 Maven POM文件将继承 spring-boot-starter-parent 工程并声明一个或多个“Starters”依赖。Spring Boot 也提供一个可选的 Maven 插件来创建可执行的 jar 包。下面是一个典型的 pom.xml 文件:


<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd">
 <modelVersion>4.0.0</modelVersion>
 <groupId>com.example</groupId>
 <artifactId>myproject</artifactId>
 <version>0.0.1-SNAPSHOT</version>
 <!-- Inherit defaults from Spring Boot -->
 <parent>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter-parent</artifactId>
 <version>2.0.0.BUILD-SNAPSHOT</version>
 </parent>
 <!-- Add typical dependencies for a web application -->
 <dependencies>
 <dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter-web</artifactId>
 </dependency>
 </dependencies>
 <!-- Package as an executable jar -->
 <build>
 <plugins>
 <plugin>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-maven-plugin</artifactId>
 </plugin>
 </plugins>
 </build> 
 <!-- Add Spring repositories -->
 <!-- (you don't need this if you are using a .RELEASE version) -->
 <repositories>
 <repository>
 <id>spring-snapshots</id>
 <url>http://repo.spring.io/snapshot</url>
 <snapshots><enabled>true</enabled></snapshots>
 </repository>
 <repository>
 <id>spring-milestones</id>
 <url>http://repo.spring.io/milestone</url>
 </repository>
 </repositories>
 <pluginRepositories>
 <pluginRepository>
 <id>spring-snapshots</id>
 <url>http://repo.spring.io/snapshot</url>
 </pluginRepository>
 <pluginRepository>
 <id>spring-milestones</id>
 <url>http://repo.spring.io/milestone</url>
 </pluginRepository>
 </pluginRepositories>
</project>

spring-boot-starter-parent 是使用 Spring Boot 的一种极好的方式,但它可能不是一直都合适的。有时你可能需要继承一个不同的父 POM,或者你可能不喜欢我们的默认设置。请看 13.2.2 小节,『没有父 POM 的情况下使用 Spring Boot』是一种可替代的解决方案,它使用了 import 作用域。


10.1.2 Gradle 安装

Spring Boot 兼容 Gradle 1.12 或 2.x。推荐使用 2.14.1。不支持 Gradle 3。如果你没有安装 Gradle,你可以根据 www.gradle.org/的介绍来安装。Spring Boot 依赖使用 org.springframework.boot groupId。通常你的工程会声明一个或多个“Starters”依赖。Spring Boot 提供了一个有用的 Gradle 插件用来简化依赖声明并创建可执行的 jar 包。


Gradle Wrapper

当你需要构建一个工程时,Gradle Wrapper 提供了一种很好的方式来『获得』Gradle。它是一小段脚本和库,并随着你的代码一起提交来引导构建过程。更多细节请看 https://docs.gradle.org/2.14.1/userguide/gradle_wrapper.html


10.2 安装 Spring Boot CLI

Spring Boot CLI 是一个命令行工具,可以用来快速搭建基于 Spring 的原型。它允许你运行 Groovy 脚本,这意味着你有一个熟悉的类 Java 语法,没有很多的样本代码。你不需要使用 CLI 来使用 Spring Boot 但它是开始得到一个基于 Spring 应用的最快方式。


10.2.1 手动安装

你可以从 Spring 软件仓库下载 Spring CLI 发行版:

spring-boot-cli-2.0.0.BUILD-SNAPSHOT-bin.zip

spring-boot-cli-2.0.0.BUILD-SNAPSHOT-bin.tar.gz

最新的 snapshot distributions 也是可获得的。一旦下载完成,按照存档 INSTALL.txt 中的 介绍来安装。总结:bin/目录的.zip

文件中有一个 spring 脚本(Windows 中是 spring.bat),或者你可以使用 java -jar 运行.jar 文件(这个脚本帮你确保正确设置 classpath)。


10.2.2 使用 SDKMAN!安装

SDKMAN! (The Software Development Kit Manager)能用来管理各种二进制 SDKs的多个版本,包括 Groovy 和 Spring Boot CLI。从 sdkman.io 中得到 SDKMAN!并安装 Spring Boot:

$ sdk install springboot

$ spring --version

Spring Boot v2.0.0.BUILD-SNAPSHOT

如果你在为 CLI 开发功能并向很容易的访问你够简单版本,按照这些额外的介绍去做。

$ sdk install springboot dev

/path/to/spring-boot/spring-boot-cli/target/spring-boot-cli-2.0.0.BUI

LD-SNAPSHOT-bin/spring-2.0.0.BUILD-SNAPSHOT/$ sdk default springboot dev

$ spring --version

Spring CLI v2.0.0.BUILD-SNAPSHOT

这将会安装一个名为 dev 的本地 spring 实例。它指向你的目标构建位置,因此你每次重新构建 Spring Boot,spring 将是最新的。

按下面去做你会看到:

$ sdk ls springboot

=====================================================================

===========

Available Springboot Versions

=====================================================================

===========

> + dev

* 2.0.0.BUILD-SNAPSHOT

=====================================================================

===========

+ - local version

* - installed

> - currently in use

=====================================================================

===========


10.2.3 OSX Homebrew 安装

如果你在 Mac 上使用 Homebrew,安装 Spring Boot CLI 所有你需要做的是:

$ brew tap pivotal/tap

$ brew install springboot

Homebrew 会在/usr/local/bin 目录安装 spring。

如果你没有看到公式,你安装的 brew 可能过时了。执行 brew update 并重新再试一次。


10.2.4 MacPorts 安装

如果你在 Mac 上使用 MacPorts,安装 Spring Boot CLI 所有你需要做的是:

$ sudo port install spring-boot-cli


10.2.5 命令行实现

Spring Boot CLI 附带的脚本为 BASH zsh shells 提供了命令行实现。你可以在任何 shell 中 source 脚本(也称为 spring),或将它放在用户或系统范围内的 bash 完成初始化。在 Debian 系统中系统范围内的脚本是在/shell-completion/bash 目录中,当新 shell 启动时,目录下的所有脚本都被执行。如果你装了 SDKMAN!,为了手动运行脚本,执行下面的命令:

$ .

~/.sdkman/candidates/springboot/current/shell-completion/bash/spring

$ spring <HIT TAB HERE>

grab help jar run test version

如果你想使用 Homebrew 或 MacPorts 安装 Spring Boot CLI,命令行完成脚本会自动在 shell 中注册。


10.2.6 快速 Spring CLI 例子

这儿有一个真实的简单的 web 应用,你可以用来测试你的安装。创建一个文件叫

app.groovy:

@RestController

class ThisWillActuallyRun {

@RequestMapping("/")

String home() {

"Hello World!"

}

}

这儿有一个真实的简单的 web 应用,你可以用来测试你的安装。创建一个文件叫

app.groovy:

@RestController

class ThisWillActuallyRun {

@RequestMapping("/")

String home() {

"Hello World!"

}

}

当你第一次运行应用时它需要一段时间,因为要下载依赖。接下来运行会更快。在你最喜欢的浏览器中输入 localhost:8080,你应该会看到下面的结果:

Hello World!


10.3 从早期的 Spring Boot 升级

如果正在升级你的 Spring Boot,检查 project wiki 中的『发布说明』。你将找到升级说明,说明中有每一次发布的特性列表。为了升级现有的 CLI,要使用合适的包管理命令(例如 brew upgrade),如果你手动安装的 CLI,要按照标准的说明去做,为了移除旧的引用要记住更新你的PATH 环境变量。


11. 开发你的第一个 Spring Boot 应用

我们用 Java 开发一个简单的 Web 应用“Hello World!”,通过应用来强调 Spring Boot 的一些关键特性。由于大多数 IDE 都支持 Maven,因此我们用 Maven 来构建这个项目。


spring.io 网站上有许多使用 Spring Boot 的“Getting Started”指南。如果你要解决一个特定的问题;先去网站上看一下。你可以通过到start.spring.io上并从依赖搜索器中选择web启动器来简化下面的步骤。这会自动的产生一个新的工程结构所以你能以正确的方式开始编码。更多细节请看文档。

$ java -version

java version "1.7.0_51"

Java(TM) SE Runtime Environment (build 1.7.0_51-b13)

Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)

$ mvn -v

Apache Maven 3.2.3 (33f8c3e1027c3ddde99d3cdebad2656a31e8fdf4;

2014-08-11T13:58:10-07:00)

Maven home: /Users/user/tools/apache-maven-3.1.1

Java version: 1.7.0_51, vendor: Oracle Corporation


这个例子需要创建它自己的文件夹。接下来的介绍假设你已经创建了合适的文件夹并且文件夹是你的当前目录。


11.1 创建 POM 文件

我们首先需要创建一个 Maven 的 pom.xml 文件。pom.xml 是用来构建项目的处方。打开你最喜欢的文本编辑器并添加以下内容:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd">
 <modelVersion>4.0.0</modelVersion>
 <groupId>com.example</groupId>
 <artifactId>myproject</artifactId>
 <version>0.0.1-SNAPSHOT</version>
 <parent>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter-parent</artifactId>
 <version>2.0.0.BUILD-SNAPSHOT</version>
 </parent>
 <!-- Additional lines to be added here... -->
 <!-- (you don't need this if you are using a .RELEASE version) -->
 <repositories>
 <repository>
 <id>spring-snapshots</id>
 <url>http://repo.spring.io/snapshot</url>
 <snapshots><enabled>true</enabled></snapshots>
 </repository>
 <repository>
 <id>spring-milestones</id>
 <url>http://repo.spring.io/milestone</url>
 </repository>
 </repositories>
 <pluginRepositories>
 <pluginRepository>
 <id>spring-snapshots</id>
 <url>http://repo.spring.io/snapshot</url>
 </pluginRepository>
 <pluginRepository>
 <id>spring-milestones</id> 
<url>http://repo.spring.io/milestone</url>
 </pluginRepository>
 </pluginRepositories>
</project>

【下载地址】


百度网盘链接:https://pan.baidu.com/s/17h8UH5LVh7NVuIGc1Ndpzg

提取码:hs58



相关文章


使用-JFreeChart来创建基于web的图表

使用-JFreeChart来创建基于web的图表

XStream使用文档

XStream使用文档

WebService发布过程及常见问题

WebService发布过程及常见问题

webpack实战入门进阶调优分享

webpack实战入门进阶调优分享

weblogic调优参数及监控指标

weblogic调优参数及监控指标

weblogic节点管理

weblogic节点管理

weblogic管理控制台概述

weblogic管理控制台概述

weblogic-部署和启动

weblogic-部署和启动

WebLogic-Server-性能及调优-调优-Java-虚拟机

Java 虚拟机(Java virtual machine,简称 JVM)是一种虚拟“执行引擎”实例,可在微处理器上执行 Java 类文件中的字节码。调整 JVM 的方式会影响 Weblogic Server 和应用程序的性能。

Velocity用户教程

Velocity是一个基于java的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象。

Velocity用户手册

Velocity 用户手册是帮助页面设计者和内容提供者认识 Velocity 和其简单而功能强大的脚本语言――Velocity 模板语言(VTL)。在手册上的许多例子,都是用 Velocity 插入动态的内容到网页上,但是所有的 VLT 例子都能应用到其他的页面和模板中。


文章热度: 166291
文章数量: 333
推荐阅读

FlashFXP绿色版网盘下载,附激活教程 593

FlashFxp百度网盘下载链接:https://pan.baidu.com/s/1MBQ5gkZY1TCFY8A7fnZCfQ。FlashFxp是功能强大的FTP工具

Adobe Fireworks CS6 Ansifa绿色精简版网盘下载 431

firework可以制作精美或是可以闪瞎眼的gif,这在广告领域是需要常用的,还有firework制作下logo,一些原创的图片还是很便捷的,而且fireworks用法简单,配合dw在做网站这一块往往会发挥出很强大的效果。百度网盘下载链接:https://pan.baidu.com/s/1fzIZszfy8VX6VzQBM_bdZQ

navicat for mysql中文绿色版网盘下载 405

Navicat for Mysql是用于Mysql数据库管理的一款图形化管理软件,非常的便捷和好用,可以方便的增删改查数据库、数据表、字段、支持mysql命令,视图等等。百度网盘下载链接:https://pan.baidu.com/s/1T_tlgxzdQLtDr9TzptoWQw 提取码:y2yq

火车头采集器(旗舰版)绿色版网盘下载 510

火车头采集器是站长常用的工具,相比于八爪鱼,简洁好用,易于配置。火车头能够轻松的抓取网页内容,并通过自带的工具对内容进行处理。站长圈想要做网站,火车头采集器是必不可少的。百度网盘链接:https://pan.baidu.com/s/1u8wUqS901HgOmucMBBOvEA

Photoshop(CS-2015-2023)绿色中文版软件下载 1047

安装文件清单(共46G)包含Window和Mac OS各个版本的安装包,从cs到cc,从绿色版到破解版,从安装文件激活工具,应有尽有,一次性打包。 Photoshop CC绿色精简版 Photoshop CS6 Mac版 Photoshop CC 2015 32位 Photoshop CC 2015 64位 Photoshop CC 2015 MAC版 Photoshop CC 2017 64位 Adobe Photoshop CC 2018 Adobe_Photoshop_CC_2018 Photoshop CC 2018 Win32 Photoshop CC 2018 Win64

知之

知之平台是全球领先的知识付费平台。提供各个领域的项目实战经验分享,提供优质的行业解决方案信息,来帮助您的工作和学习

使用指南 建议意见 用户协议 友情链接 隐私政策 Powered by NOOU ©2020 知之