百牛信息技术bainiu.ltd整理发布于博客园html
Spring Boot使建立基于Spring的应用程序变得轻松,您只须要作到“just run”就能建立一个独立的、产品级别的Spring应用程序。咱们为Spring平台及第三方库提供了相对固定的搭配,因此您开始的时候会轻松不少。大部分的SpringBoot应用程序都只须要不多的Spring配置。java
您可使用SpringBoot建立应用程序,经过java -jar
命令或者传统的war包部署方式来启动它。咱们也提供了一个命令行工具来运行“spring脚本”。web
咱们的目标是:spring
通常状况下,Spring Boot1.4.1.BUILD-SNAPSHOT要求Java 7以及 Spring Framework 4.3.3.BUILD-SNAPSHOT或者更高版本。您能够在Java 6的环境下使用Spring Boot,可是须要一些额外的配置。访问Section 80.11, “How to use Java 6″得到更多详细说明。须要明确的是,Maven须要3.2或者更高版本,Gradle须要1.12或者2.x。Gradle 3 不支持。apache
![]() |
Tip |
---|---|
虽然您能够在Java 6或者7下使用Spring Boot,但咱们通常仍是建议尽量的使用Java 8。 |
下面的嵌入式Servlet容器能够直接使用:安全
名称 | Servlet版本 | Java版本 |
---|---|---|
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+ |
您也能够在兼容Servlet 3.0+ 的容器中部署Spring Boot 应用。springboot
Spring Boot能够和“经典的”Java开发工具一块儿使用,也能够安装成一个命令行工具。不管如何,您须要Java SDK v1.6或者更高的版本。开始以前,确认一下您的Java版本:app
$ java -version
若是您是Java开发新手,或者您只是想体验一下Spring Boot,
第一步您能够选择去Spring Boot CLI 试一试。或者,继续看“经典的”安装介绍。maven
![]() |
Tip |
---|---|
虽然Spring Boot能够兼容Java 6,可是仍是尽量使用最新版本的Java。 |
您能够像使用其余标准Java库同样使用Spring Boot。只须要将相关的spring-boot-*.jar文件包含进您的classpath。Spring Boot不须要使用特殊的工具进行集成,所以您选择任何IDE或者文本编辑器均可以;而且Spring Boot应用程序也没有任何特殊规范,您能够像其余Java程序同样来运行和调试它。编辑器
虽然您能够复制Spring Boot jars,可是咱们建议使用支持依赖管理的构建工具(好比Maven或者Gradle)。
Spring Boot与Apache Maven 3.2或者更高的版本兼容。若是您尚未安装Maven,能够去maven.apache.org阅读相关教程。
![]() |
Tip |
---|---|
不少操做系统可使用包管理工具来安装Maven,苹果的OSX操做系统Homebrew使用者能够试试brew install maven 。Ubuntu用户能够运行这个命令sudo apt-get install maven 。 |
Spring Boot 依赖的groupId
是org.springframework.boot
。一般状况下,您的MavenPOM文件继承自spring-boot-starter-parent
项目,而且声明为一些“Starters”。Spring Boot也提供了一些建立可执行jar文件的Maven插件。
这是一个典型的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>1.4.1.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>
![]() |
Tip |
---|---|
继承spring-boot-starter-parent 项目是不错的使用Spring Boot的方式,可是有时候可能仍是有不适配的问题。有些时候您可能须要继承子不一样的父POM,或者仅仅是和咱们的默认配置有所区别。查看Section 13.2.2, “Using Spring Boot without the parent POM”,这是使用了导入方式的一种解决方案。 |
Spring Boot与Gradle 1.12或者更高的版本兼容。若是您尚未安装Gradle,能够去www.gradle.org/阅读相关教程。
Spring Boot依赖的group
是org.springframework.boot
。通常状况下,您的项目可能须要为一个或多个“Starters”声明依赖项。Spring Boot提供了一些不错的Gradle插件,能够用来简化依赖声明和建立可执行的jar文件。
这是一个典型的build.gradle
文件:
buildscript {
repositories {
jcenter()
maven { url "http://repo.spring.io/snapshot" }
maven { url "http://repo.spring.io/milestone" } } dependencies { classpath("org.springframework.boot:spring-boot-gradle-plugin:1.4.1.BUILD-SNAPSHOT") } } apply plugin: 'java' apply plugin: 'spring-boot' jar { baseName = 'myproject' version = '0.0.1-SNAPSHOT' } repositories { jcenter() maven { url "http://repo.spring.io/snapshot" } maven { url "http://repo.spring.io/milestone" } } dependencies { compile("org.springframework.boot:spring-boot-starter-web") testCompile("org.springframework.boot:spring-boot-starter-test") }
Spring Boot CLI是一个命令行工具,若是想要快速获取一个Spring样品程序,可使用到它。Spring Boot CLI是一个命令行工具,若是想要快速获取一个Spring样品程序,可使用到它。有了它,您能够运行Groovy脚本,这意味着您可使用熟练的类Java语法,而不是超多的样板代码。
使用CLI这个命令行工具来作Spring Boot开发并非必须的,但它确实是一个开发Spring应用程序最快捷的方式。
到Spring软件仓库下载Spring CLI的发布包:
也能够去snapshot distributions下载最新的快照发布版本。
下载之后,阅读一下解压缩包里面的说明文档:INSTALL.txt。大概是这样,bin/
目录下的.zip
文件里面有一个spring
脚本(Windows系统是spring.bat
),或者您也可使用命令java -jar
来运行.jar
文件(脚本是帮您确保classpath是否设置正确了)。
SDKMAN!(一个软件开发工具管理器)能够用用来管理多版本的二进制SDKs,包括 Groovy 与 Spring Boot CLI。到sdkman.io下载SDKMAN!,用下面的方式来安装Spring Boot:
$ sdk install springboot $ spring --version Spring Boot v1.4.1.BUILD-SNAPSHOT
若是您正在开发一些命令行工具CLI的组件,而且想要方便的使用到您刚刚构建的版本,下面这个介绍能够帮到您。
$ sdk install springboot dev /path/to/spring-boot/spring-boot-cli/target/spring-boot-cli-1.4.1.BUILD-SNAPSHOT-bin/spring-1.4.1.BUILD-SNAPSHOT/ $ sdk default springboot dev $ spring --version Spring CLI v1.4.1.BUILD-SNAPSHOT
这样作能够安装一个被叫作dev
实例的本地spring
实例,它指向了您的目标生成路径,因此每次您从新构建Spring Boot,spring
都会是保持最新版本。
应该能够看到下面的这些输出信息:
$ sdk ls springboot ================================================================================ Available Springboot Versions ================================================================================ > + dev * 1.4.1.BUILD-SNAPSHOT ================================================================================ + - local version * - installed > - currently in use ================================================================================
若是您在Mac环境下,而且使用Homebrew,运行下面的命令来安装Spring Boot CLI:
$ brew tap pivotal/tap $ brew install springboot
Homebrew把`spring`安装到了/usr/local/bin
。
![]() |
Note |
---|---|
若是没有顺利安装的话,大概是您的brew库已经太旧了,执行brew update 之后,再试一试。 |
若是您在Mac环境下,而且使用MacPorts,运行下面的命令来安装Spring Boot CLI:
$ sudo port install spring-boot-cli