一. 前言
首先来介绍一下什么是SpringBoot
简单来说就是约定大于配置,很多集成方案已经帮你选择好了,能不配置就不配置。
回想当初Maven创建SSM工程,我们在pom.xml文件写了多少依赖,而在Spring和SpringMVC的配置文件写了多少配置;现在有了SpringBoot,它会为我们选择最合适的依赖,没有冗余代码生成和XML配置的要求(都给默认了)。
二. 基于SpringBoot搭建SSM项目
准备工作:
- java version “1.8.0_221”
- Apache Maven 3.6.3
- 开发工具:IDEA2019
正式开始:
- 创建maven项目,在pom.xml文件中添加相应的依赖
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
<!-- 指定一下JDK的版本 -->
<java.version>1.8</java.version>
</properties>
<!--
spring boot 父节点依赖,引入这个之后相关的引入就不需要添加version配置,spring boot会自动选择最合适的版本进行添加。
-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.1.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<!--
spring-boot-starter-web : 表示springboot工程能够自启动,而不需要配置到其他的tomcat中
-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- spring boot 默认使用的json解析框架是 jackson 是我们之前使用过的,那么如果要更改呢? 我们选择阿里的fastjson-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.15</version>
</dependency>
<!-- 依赖spring-boo mybatis -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.1.1</version>
</dependency>
<!-- 热部署依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
<scope>true</scope>
</dependency>
<!-- 依赖数据库的驱动程序 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
</dependencies>
- **(重点)**配置appiication.yml文件
在resources目录下新建application.yml文件
server:
port: 8080
context-path: /boot03
spring:
datasource:
url: jdbc:mysql://localhost:3306/test?characterEncoding=utf-8&useUnicode=true
username: root
password: a123456
driver-class-name: com.mysql.jdbc.Driver
dbcp:
max-active: 20
max-idle: 5
min-idle: 3
initial-size: 15
mybatis:
config-location: classpath:mybatis-conf.xml #加载mybatis全局配置文件
# mapper-locations:
# - classpath:com/wanbangee/dao/*.xml # maper映射文件,也可在启动类上加注解
- 新建SpringBoot启动类AppStart
package com.nhkj;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
@MapperScan({"com.nhkj.dao"}) //扫描sql映射文件的注解
public class AppStart { //springboot启动类
public static void main(String[] args) {
SpringApplication.run(AppStart.class,args);
}
}
- 接下来,我们就可以往java目录里添加我们三层架构的代码了,项目结构如下
- 测试
其中boot03和8080端口是我们在yml文件中配置的,/allemps是controller层中一个方法的url映射地址
三. 小结
看完是不是觉得SpringBoot真香,没有太多配置,开发起来简直easy的不要不要的。