spring-boot2.0 简介(1)

springboot官方文档:https://spring.io/guides/gs/spring-boot/

springbootGitHub地址:https://github.com/spring-projects/spring-boot

Spring Boot Build Status Chat

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.

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.

Our primary goals are:

  • Provide a radically faster and widely accessible getting started experience for all Spring development

  • 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)

  • Absolutely no code generation and no requirement for XML configuration

Installation and Getting Started

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);
    }

}

 

Getting help

Having trouble with Spring Boot? We’d like to help!

Reporting 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.

Building from Source

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.

Building reference documentation

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

Modules

There are a number of modules in Spring Boot, here is a quick overview:

spring-boot

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-autoconfigure

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.

spring-boot-starters

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.

spring-boot-cli

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.

spring-boot-actuator

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.

spring-boot-actuator-autoconfigure

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.

spring-boot-test

This module contains core items and annotations that can be helpful when testing your application.

spring-boot-test-autoconfigure

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.

spring-boot-loader

Spring Boot Loader provides the secret sauce that allows you to build a single jar file that can be launched using java -jar. Generally you will not need to use spring-boot-loader directly, but instead work with the Gradle or Maven plugin.

spring-boot-devtools

The spring-boot-devtools module provides additional development-time features such as automatic restarts, for a smoother application development experience. Developer tools are automatically disabled when running a fully packaged application.

Samples

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.

Guides

The spring.io site contains several guides that show how to use Spring Boot step-by-step:

License

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 Boot使用GitHub的集成问题跟踪系统来记录错误和功能请求。如果您要提出问题,请遵循以下建议:

  • 在记录错误之前,请搜索问题跟踪器,看看是否有人已经报告了问题。

  • 如果问题尚不存在,请创建一个新的问题

  • 请在问题报告中提供尽可能多的信息,我们想知道您正在使用的Spring Boot的版本以及您的操作系统和JVM版本。

  • 如果需要粘贴代码或包含堆栈跟踪,请在文本前后使用Markdown```转义符。

  • 如果可能,请尝试创建一个复制该问题的测试用例或项目,并将其附加到该问题上。

从源头建造

您不需要从源代码构建就可以使用Spring Boot(repo.spring.io中的二进制文件 ),但是如果您想尝试最新的和最大的版本,可以使用maven包装器轻松构建Spring Boot 您还需要JDK 1.8。

$ ./mvnw全新安装

如果要使用常规mvn命令进行构建,则需要 Maven v3.5.0或更高版本

注意
您可能需要通过将MAVEN_OPTS环境变量设置为来增加Maven可用的内存量-Xmx512m如果要在其中构建和运行测试,请记住还要在IDE中设置相应的属性(例如,在Eclipse中,转到Preferences→Java→Installed JREs并编辑JRE定义,以便使用这些参数启动所有进程)。如果使用Maven包装器,则会自动设置此属性。

如果您希望提交拉取请求,也请参见CONTRIBUTING.adoc,尤其是 在您第一次更改之前,请先填写“ 贡献者协议”,无论多么琐碎。

建筑参考文件

首先,请确保您已经构建了项目:

$ ./mvnw全新安装

参考文档需要Maven插件的文档可用,因此您需要首先构建它,因为默认情况下不会生成它。

$ ./mvnw全新安装-pl spring-boot-project / spring-boot-tools / spring-boot-maven-plugin -Pdefault,full

该文档还包括有关启动器的自动生成的信息。您可能已经将其存储在本地存储库中(第一步),但是如果要刷新它:

$ ./mvnw全新安装-f spring-boot-project / spring-boot-starters

完成此操作后,您可以使用以下命令构建参考文档:

$ ./mvnw clean prepare-package -pl spring-boot-project / spring-boot-docs -Pdefault,full
小费
可以从以下位置获得生成的文档 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在项目中包含依赖项即可。

春天引导cli

Spring命令行应用程序可以编译并运行Groovy源代码,这使得编写绝对的最少代码以使应用程序运行变得非常容易。Spring CLI还可以监视文件,并在文件更改时自动重新编译和重新启动。

弹簧启动执行器

执行器端点使您可以监视应用程序并与之交互。Spring Boot Actuator提供了执行器端点所需的基础架构。它包含对执行器端点的注释支持。开箱,该模块提供了许多端点包括HealthEndpointEnvironmentEndpointBeansEndpoint等等。

弹簧启动执行器自动配置

这将基于类路径的内容和一组属性为执行器端点提供自动配置。例如,如果Micrometer在类路径上,它将自动配置MetricsEndpoint它包含用于通过HTTP或JMX公开端点的配置。就像Spring Boot AutoConfigure一样,这将在用户开始定义自己的bean时消失。

春季启动测试

该模块包含核心项目和注释,在测试应用程序时可能会有所帮助。

弹簧启动测试自动配置

像其他Spring Boot自动配置模块一样,spring-boot-test-autoconfigure为基于类路径的测试提供自动配置。它包含许多批注,可用于自动配置需要测试的应用程序片段。

弹簧引导加载程序

Spring Boot Loader提供了秘密工具,可让您构建一个可以使用来启动的jar文件java -jar通常,您不需要spring-boot-loader直接使用 ,而是使用 GradleMaven插件。

spring-boot-devtools

spring-boot-devtools模块提供了其他开发时功能,例如自动重启,以提供更流畅的应用程序开发体验。运行完全打包的应用程序时,将自动禁用开发人员工具。

样品

spring-boot-cli / samples中提供了与命令行应用程序一起使用的Groovy 示例要运行CLI示例,请spring run <sample>.groovy从示例目录键入

导游

spring.io网站包含一些指南,说明如何使用Spring引导一步一步:

执照

Spring Boot是在Apache 2.0许可下发行的开源软件

注意:

1、依赖版本jdk8以上,springboot2.x用JDK8,因为底层是Sprint framework5
2、安装maven最新版本,maven3.2以上版本,下载地址:https://maven.apache.org/download.cgi
3、SpringBoot文件配置详细请参考官网地址:点击查看

 

posted @ 2019-11-02 22:52  o小兵o  阅读(432)  评论(0编辑  收藏  举报