springboot官方文档:https://spring.io/guides/gs/spring-boot/html
springbootGitHub地址:https://github.com/spring-projects/spring-bootjava
Spring Boot makes it easy to create Spring-powered, production-grade applications and services with absolute minimum fuss. It takes an opinionated view of the Spring platform so that new and existing users can quickly get to the bits they need.git
You can use Spring Boot to create stand-alone Java applications that can be started using java -jar
or more traditional WAR deployments. We also provide a command line tool that runs spring scripts.github
Our primary goals are:web
Provide a radically faster and widely accessible getting started experience for all Spring developmentspring
Be opinionated out of the box, but get out of the way quickly as requirements start to diverge from the defaults数据库
Provide a range of non-functional features that are common to large classes of projects (e.g. embedded servers, security, metrics, health checks, externalized configuration)apache
Absolutely no code generation and no requirement for XML configurationapi
The reference documentation includes detailed installation instructions as well as a comprehensive getting started
guide.安全
Here is a quick teaser of a complete Spring Boot application in Java:
import org.springframework.boot.*; import org.springframework.boot.autoconfigure.*; import org.springframework.web.bind.annotation.*; @RestController @SpringBootApplication public class Example { @RequestMapping("/") String home() { return "Hello World!"; } public static void main(String[] args) { SpringApplication.run(Example.class, args); } }
Having trouble with Spring Boot? We’d like to help!
Check the reference documentation, especially the How-to’s — they provide solutions to the most common questions.
Learn the Spring basics — Spring Boot builds on many other Spring projects, check the spring.io web-site for a wealth of reference documentation. If you are just starting out with Spring, try one of the guides.
If you are upgrading, read the release notes for upgrade instructions and "new and noteworthy" features.
Ask a question - we monitor stackoverflow.com for questions tagged with spring-boot
. You can also chat with the community on Gitter.
Report bugs with Spring Boot at github.com/spring-projects/spring-boot/issues.
Spring Boot uses GitHub’s integrated issue tracking system to record bugs and feature requests. If you want to raise an issue, please follow the recommendations below:
Before you log a bug, please search the issue tracker to see if someone has already reported the problem.
If the issue doesn’t already exist, create a new issue.
Please provide as much information as possible with the issue report, we like to know the version of Spring Boot that you are using, as well as your Operating System and JVM version.
If you need to paste code, or include a stack trace use Markdown ``` escapes before and after your text.
If possible try to create a test-case or project that replicates the problem and attach it to the issue.
You don’t need to build from source to use Spring Boot (binaries in repo.spring.io), but if you want to try out the latest and greatest, Spring Boot can be easily built with the maven wrapper. You also need JDK 1.8.
$ ./mvnw clean install
If you want to build with the regular mvn
command, you will need Maven v3.5.0 or above.
Note
|
You may need to increase the amount of memory available to Maven by setting a MAVEN_OPTS environment variable with the value -Xmx512m . Remember to set the corresponding property in your IDE as well if you are building and running tests there (e.g. in Eclipse go to Preferences→Java→Installed JREs and edit the JRE definition so that all processes are launched with those arguments). This property is automatically set if you use the maven wrapper. |
Also see CONTRIBUTING.adoc if you wish to submit pull requests, and in particular please fill out the Contributor’s Agreement before your first change, however trivial.
First of all, make sure you have built the project:
$ ./mvnw clean install
The reference documentation requires the documentation of the Maven plugin to be available so you need to build that first since it’s not generated by default.
$ ./mvnw clean install -pl spring-boot-project/spring-boot-tools/spring-boot-maven-plugin -Pdefault,full
The documentation also includes auto-generated information about the starters. You might have that in your local repository already (per the first step) but if you want to refresh it:
$ ./mvnw clean install -f spring-boot-project/spring-boot-starters
Once this is done, you can build the reference documentation with the command below:
$ ./mvnw clean prepare-package -pl spring-boot-project/spring-boot-docs -Pdefault,full
Tip
|
The generated documentation is available from spring-boot-project/spring-boot-docs/target/generated-docs/reference/html |
There are a number of modules in Spring Boot, here is a quick overview:
The main library providing features that support the other parts of Spring Boot, these include:
The SpringApplication
class, providing static convenience methods that make it easy to write a stand-alone Spring Application. Its sole job is to create and refresh an appropriate Spring ApplicationContext
Embedded web applications with a choice of container (Tomcat, Jetty or Undertow)
First class externalized configuration support
Convenience ApplicationContext
initializers, including support for sensible logging defaults
Spring Boot can configure large parts of common applications based on the content of their classpath. A single @EnableAutoConfiguration
annotation triggers auto-configuration of the Spring context.
Auto-configuration attempts to deduce which beans a user might need. For example, if HSQLDB
is on the classpath, and the user has not configured any database connections, then they probably want an in-memory database to be defined. Auto-configuration will always back away as the user starts to define their own beans.
Starters are a set of convenient dependency descriptors that you can include in your application. You get a one-stop-shop for all the Spring and related technology that you need without having to hunt through sample code and copy paste loads of dependency descriptors. For example, if you want to get started using Spring and JPA for database access just include the spring-boot-starter-data-jpa
dependency in your project, and you are good to go.
The Spring command line application compiles and runs Groovy source, making it super easy to write the absolute minimum of code to get an application running. Spring CLI can also watch files, automatically recompiling and restarting when they change.
Actuator endpoints let you monitor and interact with your application. Spring Boot Actuator provides the infrastructure required for actuator endpoints. It contains annotation support for actuator endpoints. Out of the box, this module provides a number of endpoints including the HealthEndpoint
, EnvironmentEndpoint
, BeansEndpoint
and many more.
This provides auto-configuration for actuator endpoints based on the content of the classpath and a set of properties. For instance, if Micrometer is on the classpath, it will auto-configure the MetricsEndpoint
. It contains configuration to expose endpoints over HTTP or JMX. Just like Spring Boot AutoConfigure, this will back away as the user starts to define their own beans.
This module contains core items and annotations that can be helpful when testing your application.
Like other Spring Boot auto-configuration modules, spring-boot-test-autoconfigure, provides auto-configuration for tests based on the classpath. It includes a number of annotations that can be used to automatically configure a slice of your application that needs to be tested.
Groovy samples for use with the command line application are available in spring-boot-cli/samples. To run the CLI samples type spring run <sample>.groovy
from samples directory.
The spring.io site contains several guides that show how to use Spring Boot step-by-step:
Building an Application with Spring Boot is a very basic guide that shows you how to create a simple application, run it and add some management services.
Building a RESTful Web Service with Spring Boot Actuator is a guide to creating a REST web service and also shows how the server can be configured.
Converting a Spring Boot JAR Application to a WAR shows you how to run applications in a web server as a WAR file.
Spring Boot is Open Source software released under the Apache 2.0 license.
翻译网页参考
Spring Boot使建立具备Spring动力的生产级应用程序和服务变得很是容易,而引发的麻烦却很小。它从Spring平台的角度出发,以便新老用户都能快速找到所需的信息。
您可使用Spring Boot建立独立的Java应用程序,可使用java -jar
或更传统的WAR部署启动该应用程序 。咱们还提供了运行Spring脚本的命令行工具。
咱们的主要目标是:
为全部Spring开发提供根本上更快且可普遍访问的入门经验
开箱即用,但随着需求开始偏离默认值而迅速摆脱困境
提供一系列大型项目共有的非功能性功能(例如,嵌入式服务器,安全性,指标,运行情况检查,外部化配置)
彻底没有代码生成,也不须要XML配置
该参考文档包括详细 的安装说明以及全面的 getting started
指导。
这是Java完整Spring Boot应用程序的快速摘要:
import org.springframework.boot.*; import org.springframework.boot.autoconfigure.*; import org.springframework.web.bind.annotation.*; @RestController @SpringBootApplication public class Example { @RequestMapping("/") String home() { return "Hello World!"; } public static void main(String[] args) { SpringApplication.run(Example.class, args); } }
Spring Boot遇到问题了吗?咱们想提供帮助!
了解Spring基础知识-Spring Boot创建在许多其余Spring项目上,请访问spring.io网站以获取大量参考文档。若是您只是从Spring开始,请尝试其中的指南之一。
若是要升级,请阅读发行说明以获取升级说明和“新的和值得注意的”功能。
提出一个问题-咱们监视stackoverflow.com中是否有标有的问题spring-boot
。您也能够在Gitter上与社区聊天。
在github.com/spring-projects/spring-boot/issues上报告Spring Boot的错误。
您不须要从源代码构建就可使用Spring Boot(repo.spring.io中的二进制文件 ),可是若是您想尝试最新的和最大的版本,可使用maven包装器轻松构建Spring Boot 。您还须要JDK 1.8。
若是要使用常规mvn
命令进行构建,则须要 Maven v3.5.0或更高版本。
注意
|
您可能须要经过将MAVEN_OPTS 环境变量设置为值来增长Maven可用的内存量-Xmx512m 。若是要在其中构建和运行测试,请记住还要在IDE中设置相应的属性(例如,在Eclipse中,转到Preferences→Java→Installed JREs 并编辑JRE定义,以便使用这些参数启动全部进程)。若是使用Maven包装器,则会自动设置此属性。 |
若是您但愿提交拉取请求,也请参见CONTRIBUTING.adoc,尤为是 在您第一次更改以前,请先填写“ 贡献者协议”,不管多么琐碎。
首先,请确保您已经构建了项目:
参考文档须要Maven插件的文档可用,所以您须要首先构建它,由于默认状况下不会生成它。
该文档还包括有关启动器的自动生成的信息。您可能已经将其存储在本地存储库中(第一步),可是若是要刷新它:
完成此操做后,您可使用如下命令构建参考文档:
小费
|
能够从如下位置得到生成的文档 spring-boot-project/spring-boot-docs/target/generated-docs/reference/html |
Spring Boot中有许多模块,这是一个快速的概述:
主库提供了支持Spring Boot其余部分的功能,其中包括:
在SpringApplication
类,提供静态便捷方法,能够很容易写一个独立的Spring应用程序。它的惟一工做是建立和刷新适当的SpringApplicationContext
嵌入式Web应用程序,可选择容器(Tomcat,Jetty或Undertow)
一流的外部化配置支持
便利的ApplicationContext
初始化程序,包括对明智的日志记录默认值的支持
Spring Boot能够根据类应用程序的类路径的内容来配置它们。单个@EnableAutoConfiguration
注释触发Spring上下文的自动配置。
自动配置会尝试推断用户可能须要哪些bean。例如,若是 HSQLDB
在类路径上,而且用户还没有配置任何数据库链接,则他们可能但愿定义内存数据库。当用户开始定义本身的bean时,自动配置将始终消失。
入门程序是一组便捷的依赖项描述符,您能够在应用程序中包括它们。您能够一站式购买全部所需的Spring和相关技术,而没必要遍历示例代码并复制依赖项描述符的粘贴负载。例如,若是您想开始使用Spring和JPA进行数据库访问,只需spring-boot-starter-data-jpa
在项目中包含依赖项便可。
Spring命令行应用程序能够编译并运行Groovy源代码,这使得编写绝对的最少代码以使应用程序运行变得很是容易。Spring CLI还能够监视文件,并在文件更改时自动从新编译和从新启动。
执行器端点使您能够监视应用程序并与之交互。Spring Boot Actuator提供了执行器端点所需的基础架构。它包含对执行器端点的注释支持。开箱,该模块提供了许多端点包括HealthEndpoint
,EnvironmentEndpoint
,BeansEndpoint
等等。
这将基于类路径的内容和一组属性为执行器端点提供自动配置。例如,若是Micrometer在类路径上,它将自动配置MetricsEndpoint
。它包含用于经过HTTP或JMX公开端点的配置。就像Spring Boot AutoConfigure同样,这将在用户开始定义本身的bean时消失。
像其余Spring Boot自动配置模块同样,spring-boot-test-autoconfigure为基于类路径的测试提供自动配置。它包含许多批注,可用于自动配置须要测试的应用程序片断。
spring-boot-cli / samples中提供了与命令行应用程序一块儿使用的Groovy 示例。要运行CLI示例,请spring run <sample>.groovy
从示例目录键入 。
该spring.io网站包含一些指南,说明如何使用Spring引导一步一步:
使用Spring Boot构建应用程序是很是基本的指南,向您展现如何建立一个简单的应用程序,运行该应用程序并添加一些管理服务。
使用Spring Boot Actuator构建RESTful Web服务是建立REST Web服务的指南,还显示了如何配置服务器。
将Spring Boot JAR应用程序转换为WAR,将向您展现如何在Web服务器中以WAR文件的形式运行应用程序。
Spring Boot是在Apache 2.0许可下发行的开源软件 。
一、依赖版本jdk8以上,springboot2.x用JDK8,由于底层是Sprint framework5二、安装maven最新版本,maven3.2以上版本,下载地址:https://maven.apache.org/download.cgi 三、SpringBoot2.x的默认Maven依赖版本参考官网地址:https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/reference/htmlsingle/#appendix-dependency-versions