简介
Spring Boot简化了基于Spring的应用开发,你只需要"run"就能创建一个独立的,产品级别的
Spring应用。 我们为Spring平台及第三方库提供开箱即用的设置,这样你就可以有条不紊地
开始。多数Spring Boot应用只需要很少的Spring配置。
你可以使用Spring Boot创建Java应用,并使用 java -jar 启动它或采用传统的war部署方式。
我们也提供了一个运行"spring脚本"的命令行工具。
我们主要的目标是:
- 为所有Spring开发提供一个从根本上更快,且随处可得的入门体验。
- 开箱即用,但通过不采用默认设置可以快速摆脱这种方式。
- 提供一系列大型项目常用的非功能性特征,比如:内嵌服务器,安全,指标,健康检
测,外部化配置。 - 绝对没有代码生成,也不需要XML配置
系统要求
Spring boot 1.4.1需要
- java7 +
- Maven 3.2 +
注:java6也可以使用但是不推荐
搭建
推荐使用IDE来构建Spring Boot项目,我使用的是Intellj idea
创建maven项目
src/main/java
下的Application类为程序员入口
src/main/resources
为资源目录
src/test
为测试目录
配置pom.xml引入dependencies
<?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>Spring-boot-blog</groupId>
<artifactId>test</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<java.version>1.7</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.1.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
主要引入了Spring Boot的starter-parent
模块和starter-web
模块。
编写
application.java作为入口类
@Configuration
@EnableAutoConfiguration
@ComponentScan
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class);
}
}
@Configuration
:标识为一个配置类
@EnableAutoConfiguration
:Spring Boot根据添加的jar依赖猜测你想如何配置Spring,并进行自动配置
@ComponentScan
:以当前类所在目录为根目录,搜索bean
HelloController.java作为服务类
@RestController
public class HelloController {
@RequestMapping("/")
public String helloWorld(){
return "Hello World!";
}
}
运行
通过运行Application.java
中的Main方法,可以启动一个web应用
在浏览器中输入localhost:8080/即可看到一个Hello World!
结语
Spring Boot通过注解来简化配置,和内置tomcat能够快速搭建一个web应用。