文章目录
基于SpringBoot的SSMP整合案例
Spring,springmvc,mybatis-plus整合
案例分析
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hk1ixsIu-1651492255975)(springboot.assets/image-20220502150027714.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/Yc76CV4e5D.png)
小结
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sLvK2lS3-1651492255977)(springboot.assets/image-20220502150225656.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/3J14ZeeTO9.png)
项目搭建
完整项目
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RdWbs3lG-1651492255978)(springboot.assets/image-20220502150354281.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/2f8UV5S200.png)
目标项目
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ISVVhtI5-1651492255979)(springboot.assets/image-20220502150450296.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/75ZYc30YK0.png)
模块创建
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hOMTsRNl-1651492255980)(springboot.assets/image-20220502150843894.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/e02eVC2F5b.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rTb4i9Xa-1651492255981)(springboot.assets/image-20220502150925251.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/LT362cTAVa.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GgtMCstb-1651492255982)(springboot.assets/image-20220502150954710.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/2259V66J99.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9KSF66YO-1651492255982)(springboot.assets/image-20220502151012948.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/5baWSH9aX2.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pylmM6OZ-1651492255983)(springboot.assets/image-20220502151032601.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/ca2D5K9eV1.png)
pom.xml
清理无效语句
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PvtlaPCQ-1651492255983)(springboot.assets/image-20220502151426989.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/51X43eF53P.png)
导入需要依赖
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.3</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.6</version>
</dependency>
Application主入口
改名
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q7cnBDKG-1651492255984)(springboot.assets/image-20220502151838856.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/ee95GY4eOD.png)
yml
设置80端口
server:
port: 80
小结
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FYhOqwpb-1651492255984)(springboot.assets/image-20220502152023246.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/eb0UBV7HP4.png)
SQL数据库
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Nyn98vuq-1651492255984)(springboot.assets/image-20220502152307409.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/c09A5Ba131.png)
实体类开发
Lombok注解
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JV1PShBc-1651492255985)(springboot.assets/image-20220502154411614.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/B81HA4a915.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0flEB03G-1651492255985)(springboot.assets/image-20220502154419333.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/945bA2R7Q9.png)
导入Lombok依赖
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
@Data
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kkBP82e6-1651492255985)(springboot.assets/image-20220502153936382.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/e539DU4AG9.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZvDVpZmq-1651492255986)(springboot.assets/image-20220502153944828.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/DS81974Ke0.png)
@Constructor
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YXwuJ99p-1651492255986)(springboot.assets/image-20220502154244277.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/Ie6Fd4Od99.png)
实体类
package com.taotao.domain;
import jdk.nashorn.internal.objects.annotations.Constructor;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.Getter;
/**
* create by 刘鸿涛
* 2022/5/2 15:28
*/
@SuppressWarnings({"all"})
@Data
public class User {
private int id;
private String username;
private int password;
private String gender;
private String addr;
}
小结
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1ObfSuX4-1651492255986)(springboot.assets/image-20220502154547060.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/2XcVQ01U41.png)
数据层开发
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Shz1BN2D-1651492255987)(springboot.assets/image-20220502171343256.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/QCTaD34IHG.png)
编写yml
配置数据源
server:
port: 80
spring:
datasource:
druid:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/mybatis?serverTimezone=UTC
username: root
password: 12345
配置连接表
@TableName(“tb_user”)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5JQF7ui8-1651492255987)(springboot.assets/image-20220502172333061.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/AZ85e29aZD.png)
编写Dao层
package com.taotao.dao;
import com.taotao.domain.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
/**
* create by 刘鸿涛
* 2022/5/2 18:16
*/
@SuppressWarnings({"all"})
@Mapper
public interface UserMapper {
@Select("select * from tb_user where id = #{id}")
User getById(Integer id);
}
编写测试类
package com.taotao.dao;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
/**
* create by 刘鸿涛
* 2022/5/2 18:20
*/
@SuppressWarnings({"all"})
@SpringBootTest
public class UserDaoTestCase {
@Autowired
private UserMapper userMapper;
@Test
void testGetById(){
System.out.println(userMapper.getById(1));
}
}
测试成功
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vVpf1NKX-1651492255987)(springboot.assets/image-20220502192407160.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/30cN38BNO3.png)
改为mybatis-plus技术
修改dao接口
package com.taotao.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.taotao.domain.User;
import org.apache.ibatis.annotations.Mapper;
/**
* create by 刘鸿涛
* 2022/5/2 18:16
*/
@SuppressWarnings({"all"})
@Mapper
public interface UserMapper extends BaseMapper<User> {
}
测试成功
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Gm8skBEx-1651492255988)(springboot.assets/image-20220502193525494.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/O2M28Z0F29.png)
测试mybatis-plus其他查询
package com.taotao.dao;
import com.taotao.domain.User;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.stereotype.Repository;
/**
* create by 刘鸿涛
* 2022/5/2 18:20
*/
@SuppressWarnings({"all"})
@SpringBootTest
public class UserDaoTestCase {
@Autowired
private UserMapper userMapper;
@Test
void testGetById(){
System.out.println(userMapper.selectById(1));
}
//添加
@Test
void testSave(){
User user = new User();
user.setUsername("taotao");
user.setAddr("上海");
user.setPassword(456);
user.setGender("女");
userMapper.insert(user);
}
@Test
void testUpdata(){
User user = new User();
user.setId(3);
user.setUsername("刘鸿涛");
user.setAddr("上海");
user.setPassword(456);
user.setGender("女");
userMapper.updateById(user);
}
@Test
void testDelete(){
userMapper.deleteById(4);
}
//查询所有
@Test
void testGetAll(){
System.out.println(userMapper.selectList(null));
}
//
@Test
void testGetPage(){
}
@Test
void testGetBy(){
}
}
都没问题
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZWLt929D-1651492255988)(springboot.assets/image-20220502194840383.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/VePN1deG4J.png)
小结
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7KMllZBU-1651492255988)(springboot.assets/image-20220502194903079.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/T8Q75b96BG.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-s948WlS7-1651492255988)(springboot.assets/image-20220502194913654.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/BZfXBZf037.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cxUOioWL-1651492255989)(springboot.assets/image-20220502194919294.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/e4UcR11BGa.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aJpDwhr5-1651492255989)(springboot.assets/image-20220502194923398.png)]](https://file.cfanz.cn/uploads/png/2022/05/02/12/U73e7S90T9.png)










