一.SpringBoot介绍
1.1 案例引入
如果使用 Spring 开发一个"HelloWorld"的 web 应用步骤:
• 创建一个 web 项目并且导入相关 jar 包:SpringMVC、Servlet
• 创建一个 web.xml
• 编写一个控制类(Controller)
• 需要一个部署 web 应用的服务器 如 tomcat
1.2 SpringBoot特点
• SpringBoot 并不是对 Spring 功能上的增强,而是提供了一种快速使用 Spring 的方式。
• SpringBoot 设计目的是用来简化 Spring 应用的初始搭建以及开发过程。
• 嵌入的 Tomcat,无需部署 WAR 文件
二.SpringBoot环境搭建
创建Maven工程 01-spring-boot-hello(jar),配置文件如下
<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>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.10.RELEASE</version>
</parent>
<groupId>com.bjsxt</groupId>
<artifactId>01-spring-boot-hello</artifactId>
<version>0.0.1-SNAPSHOT</version>
<!-- 修改jdk版本 -->
<properties>
<java.version>1.7</java.version>
</properties>
<dependencies>
<!--
引入springBoot的启动器
所谓的 springBoot 启动器其实就是一些 jar 包的集合。SprigBoot 一共提供 44 启动器。
spring-boot-starter-web
支持全栈式的 web 开发,包括了 Tomcat 和SpringMVC 等 jar
spring-boot-starter-jdbc
支持 spring 以 jdbc 方式操作数据库的 jar 包的集合
spring-boot-starter-redis
支持 redis 键值存储的数据库操作
-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
</project>
三.入门案例
①编写返回 HelloWorld 的 Controller
/**
* SpringBoot HelloWorld
* @author Administrator
*
*/
@Controller
public class HelloWorld {
@RequestMapping("/hello")
@ResponseBody
public Map<String, Object> showHelloWorld(){
Map<String, Object> map = new HashMap<>();
map.put("msg", "HelloWorld");
return map;
}
}
②编写 SpringBoot 启动类
/**
* SpringBoot 启动类
* @author Administrator
*
*/
@SpringBootApplication
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}
运行结果:
关于编写启动器需要注意的问题
启动器存放的位置。启动器可以和 controller 位于同一个包下,或者位于 controller 的上一级包中,但是不
能放到 controller 的平级以及子包下,否则报错