什么是Spring Boot?
Spring Boot就是一些库的集合,它能够被任意项目的构建系统所使用,简化新Spring应用的初始搭建以及开发过程,简化配置,用更简单的办法整合第三方其他技术。
使用spring boot有什么好处
其实就是简单、快速、方便!
平时如果我们需要搭建一个spring web项目的时候需要怎么做呢?
- 配置web.xml,加载spring和spring mvc
- 配置数据库连接、配置spring事务
- 配置加载配置文件的读取,开启注解
- 配置日志文件
...
配置完成之后部署tomcat 调试
使用sping boot到底有多爽
系统性归纳总结
一、SpringBoot的作用
-
简化配置文件
-
以更简单的方式整合第三方技术
- Redis
- ElasticSearch
- MyBatis
- ……
二、使用SpringBoot的套路
- 加入需要的场景starter依赖
- 配置properties或yml
- 创建主启动类
- 通过注解开启相关功能
- 运行主启动类
三、HelloWorld
1.操作步骤
①创建Maven工程
②加入依赖
<!-- 继承SpringBoot官方指定的父工程 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.8.RELEASE</version>
</parent>
<dependencies>
<!-- 加入Web开发所需要的场景启动器 -->
<dependency>
<!-- 指定groupId和artifactId即可,版本已在父工程中定义 -->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
③创建主启动类
④创建HelloWorldHandler,现在创建的hanlder不会自动扫描,因为只有主启动类的子包才会自动扫描
下面这个才正确
SpringBootHelloWorld
/**
*
* 启动类
*
*/
@SpringBootApplication
public class SpringBootHelloWorld {
public static void main(String[] args) {
SpringApplication.run(SpringBootHelloWorld.class, args);
}
}
⑤启动
运行主启动类中的main方法启动SpringBoot程序。
⑥通过网页访问handler方法
2.原理探究
①核心机制
四、SpringBoot环境下配置文件
1.总述
SpringBoot环境下常用的配置文件有两种,一种是properties属性文件,一种是yml文件。二者各有特点,语法也有很大区别,但是最终效果基本一致。
2.properties文件使用
文件名:application.properties
语法格式
xxx.xxx.xxx=xxx
3.yml文件的使用
①yml简介
yml是YAML(YAML Ain't Markup Language)语言的文件,以数据为中心,比json、xml等更适合做配置文件。
②yml语法
- 使用缩进表示层级关系
- 缩进时不允许使用Tab键,只允许使用空格。
- 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可
- 大小写敏感
③YAML 支持的三种数据结构
- 对象:键值对的集合
- 数组:一组按次序排列的值
- 字面量:单个的、不可再分的值
spring:
application:
name: apple
server:
port: 8181
context-path: /banana
五、SpringBoot整合MyBatis
1.增加持久化层依赖
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.0.5</version>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.1.1</version>
</dependency>