SpringBoot整合SSM
1. SSM整合步骤
今天带大家学习一下基于SpringBoot的SSM整合案例,话不多说,咱们开始,要实现SSM整合,有以下这么几步
- 导入依赖
- 创建yml配置文件
- dao层
- 静态页面
- 测试类进行测试
1.1 导入依赖
<?xml version="1.0" encoding="UTF-8"?>
<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">
<!-- <parent>-->
<!-- <artifactId>springdemo</artifactId>-->
<!-- <groupId>org.example</groupId>-->
<!-- <version>1.0-SNAPSHOT</version>-->
<!-- </parent>--><modelVersion>4.0.0</modelVersion><artifactId>boot</artifactId><properties><maven.compiler.source>17</maven.compiler.source><maven.compiler.target>17</maven.compiler.target></properties><!-- 引入SpringBoot父级依赖 --><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.3.4</version></parent><dependencies><!-- SpringBoot 整合springmvc依赖 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>
<!-- mysql --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.33</version></dependency>
<!-- 整合jdbc --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId><version>2.7.3</version></dependency>
<!-- 整合mybatis --><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-spring-boot3-starter</artifactId><version>3.5.7</version></dependency><!-- 整合druid --><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-3-starter</artifactId><version>1.2.23</version></dependency>
<!-- junit测试 +springboot --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><version>3.3.5</version><scope>test </scope></dependency>
<!-- lombok --><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.26</version></dependency><!-- JUnit 4 测试框架依赖,用于编写和运行单元测试 --><dependency><groupId>junit</groupId><artifactId>junit</artifactId><scope>test</scope></dependency></dependencies>
</project>
1.2 application.yml配置文件整合mysql
# 启动端口号
server:port: 8080spring:# 整合 mysql数据源 连接池datasource:driver-class-name: com.mysql.jdbc.Driverurl: jdbc:mysql:///db1username: rootpassword: 1234type: com.alibaba.druid.pool.DruidDataSource
1.3 写业务
-
pojo
package com.it.pojo;import lombok.Data;@Data
public class Dept {private int id;private String dname;private String loc;
}
-
mapper
package com.it.mapper;import com.it.pojo.Dept;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;//动态扫描代理
@Mapper
public interface DeptMapper {@Select("select * from dept where id=#{id}")public Dept findById(int id);
}
1.4 测试
package com.it.mapper;import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;@SpringBootTest
class DeptMapperTest {@Autowiredpublic DeptMapper deptMapper;@Testvoid findById() {System.out.println(deptMapper.findById(1));}
}
1.5 service
package com.it.service;import com.it.pojo.Dept;public interface DeptService {public Dept findById(int id);
}
1.6 Impl层
package com.it.service.impl;import com.it.mapper.DeptMapper;
import com.it.pojo.Dept;
import com.it.service.DeptService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;@Service
public class DeptServiceImpl implements DeptService {@Autowiredpublic DeptMapper deptMapper;@Overridepublic Dept findById(int id) {return deptMapper.findById(id);}
}
1.7 controller层
package com.it.controller;import com.it.pojo.Dept;
import com.it.service.DeptService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;@Controller
public class DeptController {@Autowiredprivate DeptService deptService;// 一个方法就是一个servlet@RequestMapping("/getList")@ResponseBodypublic Dept getList(int id){Dept dept = deptService.findById(id);System.out.println(dept);return dept;}}
1.9 查询数据
启动项目,进入端口查询数据