介绍spring boot spring boot 就是给使用spring的人带来方便,不在需要繁杂的xml配置。
Spring Boot可以轻松创建可以“运行”的独立的,生产级的基于Spring的应用程序。 大多数Spring Boot应用程序需要很少的Spring配置。 您可以使用Spring Boot创建可以使用java -jar或更多传统war部署启动的Java应用程序。 我们还提供运行“spring script”的命令行工具。 spring boot的主要目标是:
为所有Spring开发提供一个更快,更广泛的入门体验。
被要求开箱即用,但随着需求开始偏离默认值而迅速脱离出来。
提供大量项目(例如嵌入式服务器,安全性,指标,运行状况检查,外部化配置)通用的一系列非功能特性。
绝对没有代码生成,也不需要XML配置。
系统环境
我这里学习的版本,spring boot 1.5.7 release , 要求java 7+,spring framework 4.3.11 + release , maven 3.2+ 和 gradle2.9 + ,如果使用这些注意版本。
serlvet 容器 默认是 tomcat 8 ,可以换成 jetty。
安装 spring boot spring boot 还提供了一个客户端来操作,还需要用到groovy来写脚本,个人觉得直接用java传统的方式运行run as -> java application就行。
配置 尽管您可以复制Spring Boot jar到项目中,但是官方推荐您使用支持依赖关系管理的构建工具(如Maven或Gradle)。
maven 配置 spring boot Spring bbot依赖使用org.springframework.boot groupId。 通常,您的Maven POM文件将从spring-boot-starter-parent项目继承,并声明一个或多个“starters”的依赖关系。 Spring Boot还提供了一个可选的Maven插件来创建可执行的jar。
这里列出典型的pom.xml 文件:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 <?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.5.7.RELEASE</version > </parent > <dependencies > <dependency > <groupId > org.springframework.boot</groupId > <artifactId > spring-boot-starter-web</artifactId > </dependency > </dependencies > <build > <plugins > <plugin > <groupId > org.springframework.boot</groupId > <artifactId > spring-boot-maven-plugin</artifactId > </plugin > </plugins > </build > </project >
gradle 配置 spring boot 可以使用org.springframework.boot组声明Spring boot依赖项。 通常,您的项目将声明一个或多个“gradle”的依赖关系。 Spring Boot提供了一个有用的Gradle插件,可用于简化依赖关系声明并创建可执行的jar。
列出典型的build.gradle 文件:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 plugins { id 'org.springframework.boot' version '1.5.7.RELEASE' id 'java' } jar { baseName = 'myproject' version = '0.0.1-SNAPSHOT' } repositories { jcenter() } dependencies { compile("org.springframework.boot:spring-boot-starter-web") testCompile("org.springframework.boot:spring-boot-starter-test") }
安装 spring boot CLI Spring Boot CLI是一个命令行工具,可以使用,如果你想用Spring快速原型。 它允许您运行Groovy脚本,这意味着您具有熟悉的类似Java的语法,没有太多的样板代码。 您不需要使用CLI来使用Spring Boot,但它绝对是将Spring应用程序从本地开始的最快方式。
但是我推荐使用,用ide比较好,毕竟项目大了好管理。
spring boot 的简单实现 用ide(eclipse 或 IntelliJ IDEA)创建一个maven项目,直接添加pom.xml文件如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 <parent > <groupId > org.springframework.boot</groupId > <artifactId > spring-boot-starter-parent</artifactId > <version > 1.5.7.RELEASE</version > </parent > <dependencies > <dependency > <groupId > org.springframework.boot</groupId > <artifactId > spring-boot-starter-web</artifactId > </dependency > </dependencies >
创建个HelloSBoot类:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.*;import org.springframework.stereotype.*;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;@Controller @EnableAutoConfiguration public class HelloSboot { @RequestMapping ("/" ) @ResponseBody String home () { return "you did it" ; } public static void main (String[] args) throws Exception { SpringApplication.run(HelloSboot.class, args); } }
这就是最简单的spring boot程序了写完了。run as -> java application即可,运行后显示如下,并打开浏览器输入:http://localhost:8080/,会显示you did it。
console显示:
1 2 3 4 5 6 7 8 9 10 . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | ' _ | '_| | ' _ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v1.5.7.RELEASE) //后面有很多,在这略。。。
@Controller 和 @RequestMapping 注解 这些都是spring 的注解, 了结果spring 或者 spring mvc 的很容易理解。
我们的Example类的第一个注释是@Controller。 这被称steretype 注释。 它为人们阅读代码提供了一些提示,对于Spring来说,这个类具有特定的作用。 在这种情况下,我们的类是一个web @Controller,所以Spring在处理传入的Web请求时会考虑它。 @RequestMapping注释提供“路由”信息。 告诉Spring,任何具有路径“/”的HTTP请求都应映射到home方法。 @ResponseBody注释告诉Spring将生成的字符串直接返回给调用者。
@EnableAutoContiguration 注解 第二个类级别的注释是@EnableAutoConfiguration。 这个注释告诉Spring Boot根据你添加的jar依赖关系来“猜”你将如何配置Spring。 由于spring-boot-starter-web添加了Tomcat和Spring MVC,自动配置将假定您正在开发Web应用程序并相应地设置Spring。
只想说就是怎么智能!。
创建可运行jar包 为了创建可运行jar包,需要添加pom.xml文件(上面典型pom.xml里有完整文件):
1 2 3 4 5 6 7 8 <build > <plugins > <plugin > <groupId > org.springframework.boot</groupId > <artifactId > spring-boot-maven-plugin</artifactId > </plugin > </plugins > </build >
导出jar包即可。
完结。