SpringBoot简介
SpringBoot是一个框架,一种全新的编程规范,他的产生简化了框架的使用,所谓简化是指简化了Spring 众多框架中所需的大量且繁琐的配置文件,所以Spring Boot是-一个服务于框架的框架,服务范围是简化配置文件。所以从本质上来说,SpringBoot其实就是Spring框架的另一-种表现形式。
SpringBoot的设计哲学(设计原则)
1.开箱即用(依托于SpringBoot的启动器)
2.约定大于配置(依托于SpringBoot自动加载机制)
![428eb262da95263a3f5298f65f81b5ee.png](https://i-blog.csdnimg.cn/blog_migrate/252b93a85384231f44fa17611f285688.jpeg)
![09e93c4821fb849c3e048c2d2a5934af.png](https://i-blog.csdnimg.cn/blog_migrate/2e9d11dd0074223d1cb0092c9e8a2365.jpeg)
SpringBoot 特点:
1)SpringBoot 设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。
2)内嵌的 Tomcat,无需部署 WAR 文件 。
3)SpringBoot 并不是对 Spring 功能上的增强,而是提供了一种快速使用 Spring 的方式。
SpringBoot官网中版本的介绍:
SpringBoot官网--->http://spring.io
SNAPSHOT:快照版,即开发版。
CURRENT:最新版,但是不一定是稳定版。
GA:General Availability,正式发布的版本。
1.使用 maven 构建 SpringBoot 项目。(myeclipse)
![d4f80e530f8c9b3d4a1ffa551de5052d.png](https://i-blog.csdnimg.cn/blog_migrate/09f972fe8c6d41937959da98448d264d.jpeg)
![4c649f19e372627949abc950c5ddbd9c.png](https://i-blog.csdnimg.cn/blog_migrate/6c11472993f1baa7a4993318241b1865.jpeg)
![f1f877a999be152970ebff8d13465deb.png](https://i-blog.csdnimg.cn/blog_migrate/3c031909db48770f6ee21f6b84f3180a.jpeg)
2.修改 pom 文件 将 jdk 的版本更新为 1.7
版本介绍:(springboot 2.0以上版本,支持JDK1.8及以上版本;springboot 2.0以下版本,推荐JDK1.7版本)。
<!-- 修改JDK版本 -->
<properties>
<java.version>1.7</java.version>
</properties>
![bc125afff0259120e1e78a6dfb810c07.png](https://i-blog.csdnimg.cn/blog_migrate/2cd55590b23f11cf9db9e2e50dbb809a.jpeg)
3.注入springboot启动器坐标
<dependencies>
<!-- springBoot的启动器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
SpringBoot 启动器
所谓的 springBoot 启动器其实就是一些 jar 包的集合。SprigBoot 一共提供 44 启动器。
一些常见的启动器--->
4.1 spring-boot-starter-web
支持全栈式的 web 开发,包括了 romcat 和 springMVC 等 jar
4.2 spring-boot-starter-jdbc
支持 spring 以 jdbc 方式操作数据库的 jar 包的集合
4.3 spring-boot-starter-redis
支持 redis 键值存储的数据库操作
三,Spring Boot 入门 HelloWorld
![0b8e280dda2e1173688ae492bb78cb10.png](https://i-blog.csdnimg.cn/blog_migrate/c30adb65489bc196f6c4efd12e157aff.jpeg)
1.编写返回 HelloWorld 的 Controller
HelloWorld.java类 controller
package com.bjsxt.controller;
import java.util.HashMap;
import java.util.Map;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
/**
* SpringBoot helloworld
* @author TR
*
*/
@Controller
public class HelloWorld {
@RequestMapping("/hello")
@ResponseBody
public Map<String,Object> showHelloWorld(){
Map<String,Object> map = new HashMap<>();
map.put("msg", "HelloWorld!");
return map;
}
}
2.启动 SpringBoot 编写启动类
![f73982ba62315fc1e2eae34dc2f9bdda.png](https://i-blog.csdnimg.cn/blog_migrate/8ef2d60491311b12fab18a6d69886472.jpeg)
App.java类 启动器
package com.bjsxt;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* SpringBoot 启动项
* @author TR
*/
@SpringBootApplication
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}
Run As 启动器
显示的编译信息
![9106d3f73156f4ebc6ad4ab694b701fb.png](https://i-blog.csdnimg.cn/blog_migrate/cebc40ab367cc559782bde6e8dfb938f.jpeg)
pom文件
<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的启动器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
</project>
关于编写启动器需要注意的问题
启动器存放的位置。启动器可以和 controller 位于同一个包下,或者位于 controller 的上一级包中,但是不能放到 controller 的平级以及子包下。
页面打印效果
![c5c729ec1c68240632471094359aec9d.png](https://i-blog.csdnimg.cn/blog_migrate/0459ecc68dca8ca6f19a72054c4beb01.jpeg)
SpringBoot访问静态资源
默认会到两个位置找静态资源。
1)从classpath/staitic目录(在maven项目中的位置src/main/resources下的static)
注意目录名称必须为 static
![670c03a74810b9acf882441ba85fd0e0.png](https://i-blog.csdnimg.cn/blog_migrate/0cec2e3a955ead63f0514e08e708b690.jpeg)
也可以通过html访问同级目录下的文件
index.html文件
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>静态资源访问方式一</title>
</head>
<body>
静态资源访问方式一:访问smile.jpg
</hr>
<img alt="" src="images/smile.jpg">
</body>
</html>
网页导航栏中输入 访问静态页面的1路径http://localhost:8080/index.html
显示结果为:
![2b429f2d3871b84b4f7ccf01109e5bd6.png](https://i-blog.csdnimg.cn/blog_migrate/0fb3cb6f8c8f376e77394b0210672648.jpeg)
2)从ServletContext根目录下
(在maven项目中的位置在 src/main/webapp )
注意目录名称必须为 webapp
![47bc9d8ea2fd2d97410de407e9d3975e.png](https://i-blog.csdnimg.cn/blog_migrate/78a1130b7dadfcd256044720f0fb6d73.jpeg)