一.知识回顾
【0.三高商城系统的专题专栏都帮你整理好了,请点击这里!】
【1-系统架构演进过程】
【2-微服务系统架构需求】
【3-高性能、高并发、高可用的三高商城系统项目介绍】
【4-Linux云服务器上安装Docker】
【5-Docker安装部署MySQL和Redis服务】
【6-Git安装与配置过程、Gitee码云上创建项目、IDEA关联克隆的项目】
【7-创建商城系统的子模块并将修改后的信息使用Git提交到Gitee上】
【8-数据库表结构的创建&后台管理系统的搭建】
【9-前端项目的搭建部署、Node安装、VSCode安装】
【10-Node的安装以及全局环境变量的相关配置&解决启动报错的问题(1.Error: Cannot find module ‘fs/promises)(2.npm安装node-sass报错)】
【11-导入人人generator项目并自动生成相关的文件&商品子模块的调试&公共模块common子模块的抽离与实现&Lombok插件的安装】
二.商品子模块整合MyBatisPlus技术
2.1 整合的详细步骤
common模块需要添加相关的MyBatisPlus的依赖
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.3.1</version>
</dependency>
<!-- mysql依赖 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.30</version>
</dependency>
创建一个application.yml,然后完成mybatisPlus的相关数据库的连接信息配置
指定Mapper接口的路径
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
@MapperScan("com.ljw.mall.product.dao")
public class MallProductApplication {
public static void main(String[] args) {
SpringApplication.run(MallProductApplication.class, args);
}
}
然后指定Mapper映射文件的路径以及主键自增
mybatis-plus: # MybatisPlus的相关配置
mapper-locations: classpath*:/mapper/**/*.xml # mapper文件路径的位置
global-config:
db-config:
id-type: auto # 主键自增
2.2 测试是否整合成功
测试1:项目是否能成功运行
测试2:是否能对数据库进行增删改查的操作
@SpringBootTest(classes = MallProducetApplication.class)
class MallProducetApplicationTests {
@Autowired
BrandService brandService;
@Test
void contextLoads() {
BrandEntity entity = new BrandEntity();
entity.setName("宝马");
brandService.save(entity);
}
插入数据成功
数据库中找到数据
三.其它模块通过generator的自动生成与补充完善
其实这个过程和之前的商品模块的步骤是一样的,但是为了更加熟悉流程,我们再来写一遍,这个地方就以oms为例子,其它的项目模块同理。
application.yml中设置连接数据库的配置
在generator.properties的配置文件中进行相关的配置
启动项目,自动生成代码文件
解压文件,将我们解压后的文件复制粘贴到项目中对应的子模块中去。
导入公共的commons
然后就是整合MybatisPlus的过程步骤
新建立一个application.yml文件
进行相关的配置
- 数据库相关的配置
- mybatisplus相关的配置
- 指定一个端口号
启动来通过注解来指定Mapper扫描的路径
启动类,验证是否成功启动,搞定!!!
其它的模块同理,我就一个模块一个模块的写了,都是重复的工作,需要注重细节。