SpringBoot 快速入门(笔记三-SSMP整合)

本章内容为SpringBoot +JUnit+spring+springMvc+mybatis+mybatis-plus+Druid 整合,该整合项目也是我们日常代码生产过程中最长用的代码部分

一:整合JUnit

springBoot项目在创建时就为我们创建好了相关依赖,我们只需要使用就好


		org.springframework.boot
		spring-boot-starter-test
		test

1.1:SpringBoot整合JUnit

@SpringBootTest
class SpringbootJunitApplicationTests {
@Autowired
private BookService bookService;
@Test
public void testSave(){
bookService.save();
}
}

名称:@SpringBootTest
类型:测试类注解
位置:测试类定义上方
作用:设置JUnit加载的SpringBoot启动类

范例:
@SpringBootTest
class Springboot05JUnitApplicationTests {}

1:导入测试对应的starter
2: 测试类使用@SpringBootTest修饰
3: 使用自动装配的形式添加要测试的对象

1.2:用classes设置springboot启动类

名称:@SpringBootTest
类型:测试类注解
位置:测试类定义上方
作用:设置JUnit加载的SpringBoot启动类
范例:
相关属性
@SpringBootTest(classes = Application.class)

或者

@SpringBootTest

@ContextConfiguration(classes = Application.class)

import org.springframework.test.context.ContextConfiguration;

@SpringBootTest
@ContextConfiguration(classes = Application.class)
class SpringbootTest {

	@Test
	void contextLoads() {
		System.out.println("test running...");
	}

}

如果测试类在SpringBoot启动类的包或子包中,可以省略启动类的设置,也就是省略classes的设定

二:整合MyBatis

我们要做的事情主要有两个:
1:核心配置:数据库连接相关信息(连什么?连谁?什么权限)
2:映射配置:SQL映射(XML/注解)

1.1:利用IDEA 创建springBoot项目时候  勾选mybatis 相关技术

 

SpringBoot 快速入门(笔记三-SSMP整合)_第1张图片

设置数据源配置  在application.yml中

spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/ssm_db
username: root
password: root

SpringBoot版本低于2.4.3(不含),Mysql驱动版本大于8.0时,需要在url连接串中配置时区

jdbc:mysql://localhost:3306/ssm_db?serverTimezone=UTC

或在MySQL数据库端配置时区解决此问题

1.2:springboot 整合mybatis

1.2.1:定义数据层接口与配置

@Mapper
public interface UserMapper {
@Select("select * from user")
public List getAll();
}

1.2.2:测试类中注入测试接口

@SpringBootTest
class SpringbootApplication {
@Autowired
private UserMapper userMapper ;
@Test
public void testGetById() {
System.out.println(bookMapper.getAll());
}
}

1. 勾选MyBatis技术,也就是导入MyBatis对应的starter
2. 数据库连接相关信息转换成配置
3. 数据库SQL映射需要添加@Mapper被容器识别到

三:整合MyBatis-Plus

在实际开发过程当中我们一般都会使用到mp(MyBatis-Plus) 来快速开发项目

那么我们该如何整合呢?

1:创建 整合MyBatis-Plus 项目

1.1: 导入坐标

MyBatis-Plus与MyBatis区别
导入坐标不同
数据层实现简化


com.baomidou
mybatis-plus-boot-starter
3.4.3

由于SpringBoot中未收录MyBatis-Plus的坐标版本,需要指定对应的Version

1.2:利用阿里仓库创建

SpringBoot 快速入门(笔记三-SSMP整合)_第2张图片

 SpringBoot 快速入门(笔记三-SSMP整合)_第3张图片

 2:SpringBoot整合MyBatis-Plus

定义数据层接口与映射配置,继承BaseMapper

@Mapper
public interface UserDao extends BaseMapper {
}

其他和mybatis 相同,只不过继承BaseMapper 就可以使用mp中人家给咱们写好的很多方法,不用再重复造轮子了

1. 手工添加MyBatis-Plus对应的starter
2. 数据层接口使用BaseMapper简化开发
3. 需要使用的第三方技术无法通过勾选确定时,需要手工添加坐标

四:整合Druid

1:导入坐标

 
        
            com.alibaba
            druid-spring-boot-starter
            1.2.6
        

 2:指定数据源类型   不过没有提示

spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/ssm_db?serverTimezone=UTC
username: root
password: root
type: com.alibaba.druid.pool.DruidDataSource

3:变更Druid的配置方式  

spring:
datasource:
druid:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/ssm_db?serverTimezone=UTC
username: root
password: root

1. 整合Druid需要导入Druid对应的starter
2. 根据Druid提供的配置方式进行配置
3. 整合第三方技术通用方式
导入对应的starter
根据提供的配置格式,配置非默认值对应的配置项

五:SSMP整合

实体类开发————使用Lombok快速制作实体类
Dao开发————整合MyBatisPlus,制作数据层测试类
Service开发————基于MyBatisPlus进行增量开发,制作业务层测试类
Controller开发————基于Restful开发,使用PostMan测试接口功能
Controller开发————前后端开发协议制作
页面开发————基于VUE+ElementUI制作,前后端联调,页面数据处理,页面消息处理
列表、新增、修改、删除、分页、查询
项目异常处理
按条件查询————页面功能调整、Controller修正功能、Service修正功能

项目地址:https://gitee.com/heyutingfeng/springboot_ssmp.git

你可能感兴趣的:(SpringBoot,spring,boot,java,spring)