Build Anything with Spring Boot:Spring Boot is the starting point for building all Spring-based applications. Spring Boot is designed to get you up and running as quickly as possible, with minimal upfront configuration of Spring.java
上面是引用spring boot官方的话,简单来讲spring boot是全部基于spring 应用的起点,spring boot的设计初衷就是想让开发者尽量快地把项目运行起来,并且尽量减小你的配置文件。git
其实上面的简介已经能够看出了spring boot的优点,主要就是一个——快!github
回想起传统的一个web项目,即便是最简单的一个web项目,须要什么步骤呢?web
1) 配置web.xmlspring
2) 配置spring 文件,注入各类bean数据库
3) 配置日志文件json
...浏览器
若是涉及数据库和缓存还要配置数据库事务,缓存配置等等...构建完成后配置tomcat运行发布。缓存
可能简简单单一个在线注册只须要填写用户名和电话的系统就配置就可能花你一天的时间了,这就是传统基于spring的web框架的弊端——配置太繁琐!tomcat
那么有了spring boot搭建一个web 项目须要作什么呢?
1.配置pom.xml,引入须要的jar包和构建命令。(一般作好一个模板就能够直接copy,不用每次都写)
2.编写你的controller。
3.运行spring-boot :run 把项目跑起来。
这里只须要三步就能构建一个简单的web项目,可见spring boot的简洁和简便,并且由于自带tomcat,更加让开发人员免去部署tomcat等麻烦。
如上图所示,Spring Boot的基础结构共三个文件:
src/main/java 程序开发以及主程序入口
src/main/resources 配置文件
src/test/java 测试程序
2. 配置好pom.xml
打开pom.xml,加上如下代码:
<!-- spring boot 基本环境 --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.3.1.RELEASE</version> </parent> <!--web应用基本环境配置 --> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> <!-- 打包spring boot应用 --> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build>
3. 打开App.java,加上
@SpringBootApplication
注解,而后把main函数改为
public static void main( String[] args ) { SpringApplication.run(App.class, args); }
到这步springboot 的配置就已经完成,能够开始写你的业务层,编写一个helloword,而后就能够 用 spring-boot:run 运行。
@RestController
public class HelloWorld { @RequestMapping("/hello") public String hello(){ return "Hello Spring Boot !"; } }
打开浏览器输入http://localhost:8080/hello 便可见到 “Hello Spring Boot !”.
其中,@EnableAutoConfiguration 让 Spring Boot 根据类路径中的 jar 包依赖为当前项目进行自动配置,例如,添加了 spring-boot-starter-web 依赖,会自动添加 Tomcat 和 Spring MVC 的依赖,那么 Spring Boot 会对 Tomcat 和 Spring MVC 进行自动配置。Spring Boot 还会自动扫描 @SpringBootApplication 所在类的同级包以及下级包里的 Bean ,因此入口类建议就配置在 grounpID + arctifactID 组合的包名下(这里为 com.springboot.demo 包)
GitHub 地址:https://github.com/chris-study-practice/springboot-study-demo
1. Spring Boot的被@SpringBootApplication注解的App.java必须放在全部的RestController的根路径的package下.