spring boot简介
spring boot是由spring官方推出的一个新框架,对spring进行了高度封装,是spring未来的发展方向。spring boot功用众多,其中最主要的功能就是自动配置,简化开化,下面通过一个hello world来看一下它究竟有多简,需要有一定的spring和maven基础
环境
eclipse:4.5(mars)
jdk:spring4可以兼容jdk1.6,但是spring boot官方公布的一些功能使用1.8性能会高很多,这里使用1.8
创建项目
在eclipse中创建maven项目,如图 maven project
这里选择Create a simple.....
这里packaging必须选择jar而不是war,spring boot项目最终会打成一个jar包而不是war包
HelloWorld
spring boot官方网址http://projects.spring.io/spring-boot/,首页给出了一个最简单的HelloWorld例子,现在来实现一下
pom.xml
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.2.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
spring-boot-starter-parent:继承spring boot的相关参数
spring-boot-starter-xxx:代表一个spring boot模块
spring-boot-starter-web:代表web模块,在这个模块中含了许多JAR包,如下图,有spring相关的jar,内置tomcat服务器,jackson等,这些web项目中常用的的功能都会自动引入
SampleController.java
package hello; import org.springframework.boot.*;
import org.springframework.boot.autoconfigure.*;
import org.springframework.stereotype.*;
import org.springframework.web.bind.annotation.*; @Controller
@EnableAutoConfiguration
public class SampleController { @RequestMapping("/")
@ResponseBody
String home() {
return "Hello World!";
} public static void main(String[] args) throws Exception {
SpringApplication.run(SampleController.class, args);
}
}
SpringApplication.run:运行spring应用程序
@Controller相关注解:都是spring mvc就有的功能
@EnableAutoConfiguration:这就是spring boot的核心功能,自动配置。就是根据当前引入的JAR包进行自动配置,比如:
引入了jackson的jar包,那么就会自动配置json转换,所以这里可以使用@ResponseBody
引入了spring boot的web模块,就会自动配置web.xml等与web项目相关的内容,所以这些配置都不需要我们自己配了
运行方式
不需要部署到tomcat服务器,上面说了内置的tomcat服务器,直接通过main方法运行,访问http://localhost:8080/