当前位置: 首页 > news >正文

谷粒商城学习笔记-19-快速开发-逆向生成所有微服务基本CRUD代码

文章目录

  • 一,使用逆向工程步骤梳理
    • 1,修改逆向工程的application.yml配置
    • 2,修改逆向工程的generator.properties配置
    • 3,以Debug模式启动逆向工程
    • 4,使用逆向工程生成代码
    • 5,整合生成的代码到对应的模块中
  • 二, 配置各模块
    • 1,修改或者新增各模块的配置文件application.yml
    • 2,启动类配置Mapper类信息
    • 3,为各模块分配端口
    • 4,各模块增加对common模块的依赖
  • 三,测试

本节的主要内容是为使用逆向工程为其他模块生成代码,还未生成代码的模块有4个:

  • gulimall-order,订单模块
  • gulimall-coupon,优惠券模块
  • gulimall-ware,仓储模块
  • gulimall-member,会员模块

一,使用逆向工程步骤梳理

接下来使用逆向工程为商品服务gulimall-product生成相关的代码,其他的服务生成代码的步骤相似。按照下面步骤分别为其他4个模块生成代码,并整合到各自模块。

1,修改逆向工程的application.yml配置

在Idea中打开如下application.yml文件,修改数据库名。

  • gulimall-order,订单模块对应的数据库名为gulimall_oms
  • gulimall-coupon,优惠券模块的数据库名为gulimall_sms
  • gulimall-ware,仓储模块的数据库名为gulimall_wms
  • gulimall-member,会员模块的数据库名为gulimall_ums

在这里插入图片描述

2,修改逆向工程的generator.properties配置

在这里插入图片描述

修改说明:

  • ① 模块名,各模块的模块名如下。

gulimall-order,订单模块对应的模块名为order
gulimall-coupon,优惠券模块的模块名为coupon
gulimall-ware,仓储模块的模块名为ware
gulimall-member,会员模块的模块名为member

  • ② 表前缀,这个配置非常重要,数据库表名都是有前缀的,比如商品模块的表的前缀是pms_,这个配置的作用时在生成表对应的实体类时,类的名称去掉前缀。如下图,根据这个配置,表pms_attr生成的类名是Attr,如果没有这个配置,类名是PmsAttr

gulimall-order,订单模块对应的数据库名为oms_
gulimall-coupon,优惠券模块的数据库名为sms_
gulimall-ware,仓储模块的数据库名为wms_
gulimall-member,会员模块的数据库名为ums_

3,以Debug模式启动逆向工程

每次修改配置后,如下,启动逆向工程。
在这里插入图片描述

启动成功后,输入localhost:2345,即可访问逆向工程的前端页面,注意我把逆向工程的端口改成了2345,所以要带上端口,端口配置在如下图位置。
在这里插入图片描述

逆向工程前端页面如下。

在这里插入图片描述

4,使用逆向工程生成代码

在这里插入图片描述
如上图操作,生成代码。

  • ① 修改分页配置,把所有的表名展示在一页中。
  • ② 全选,对所有的表生成对应的实体类。
  • ③ 点击按钮,生成代码。

点击生成代码按钮后,生成的代码会被打包,然后自动下载。

在这里插入图片描述

压缩包的内容如下,我们需要的代码在main文件夹中。

在这里插入图片描述

5,整合生成的代码到对应的模块中

按下图方式,右键gulimall-productmain文件夹,选择Open In -> Explorer,打开gulimall-product模块代码所在文件夹。

在这里插入图片描述

然后把解压的main文件夹中的内容,拷贝到打开的main文件夹中。

拷贝完成后,idea中可以看到如下结构的代码。

在这里插入图片描述

二, 配置各模块

1,修改或者新增各模块的配置文件application.yml

在这里插入图片描述

  • 配置端口信息
  • 配置数据库连接信息
  • 配置mybatis信息

2,启动类配置Mapper类信息

在各模块的启动类上使用注解MapperScan声明Mapper接口文件所在包。

@MapperScan(basePackages = "com.atguigu.gulimall.product.dao")

3,为各模块分配端口

在开发工程中,可能同时启动多个服务,为了避免端口冲突,为每个模块分配一个端口。

gulimall-product,商品模块的端口为 10000
gulimall-order,订单模块对应的的端口为 9000
gulimall-coupon,优惠券模块的端口为 7000
gulimall-ware,仓储模块的端口为 11000
gulimall-member,会员模块的端口为 8000

4,各模块增加对common模块的依赖

在各模块的pom.xml中增加如下依赖。

		<dependency><groupId>com.atguigu.gulimall</groupId><artifactId>gulimall-common</artifactId><version>0.0.1-SNAPSHOT</version></dependency>

三,测试

启动各工程后,可以在浏览器上访问对应接口,如果能正常响应,说明生成的代码和配置没有问题。

在这里插入图片描述

http://www.lryc.cn/news/398651.html

相关文章:

  • 时序预测 | Matlab实现TCN-Transformer的时间序列预测
  • 没想到MySQL 9.0这么拉胯
  • 开源 Wiki 系统 InfoSphere 2024.01.1 发布
  • 1.Introduction to Spring Web MVC framework
  • Onnx 1-深度学习-概述1
  • 网络基础——udp协议
  • 分布式锁理解
  • Android Gradle 开发与应用 (十): Gradle 脚本最佳实践
  • c#获取本机的MAC地址(附源码)
  • sqlmap使用之-post注入、head注入(ua、cookie、referer)
  • XSS: 原理 反射型实例[入门]
  • Idea新增Module报错:sdk ‘1.8‘ type ‘JavaSDK‘ is not registered in ProjectJdkTable
  • 基于RHCE基础搭建简单服务
  • 威纶通触摸屏软件离线仿真时出现报错8000端口占用或服务器断线
  • CAS详解
  • 【笔记】虚拟机中的主从数据库连接实体数据库成功后的从数据库不同步问题解决方法2
  • 【每日一练】python类和对象现实举例详细讲解
  • 【学习css1】flex布局-页面footer部分保持在网页底部
  • Java中创建线程的几种方式
  • [A-04] ARMv8/ARMv9-Cache的相关策略
  • 【笔试常见编程题06】最近公共祖先、求最大连续bit数、二进制插入、查找组成一个偶数最接近的两个素数
  • 【工具分享】Gophish——网络钓鱼框架
  • “职业三大底层逻辑“是啥呢?
  • 飞睿智能无线高速uwb安全数据传输模块,低功耗、抗干扰超宽带uwb芯片传输速度技术新突破
  • 手把手教你从微信中取出聊天表情图片,以动态表情保存为gif为例
  • 【深度学习】图形模型基础(5):线性回归模型第三部分:线性回归模型拟合
  • 【Git 入门】初始化配置与新建仓库
  • C语言 求两个整数的最大公约数和最小公倍数
  • Linux arm64平台指令替换函数 aarch64_insn_patch_text_nosync
  • 谷歌浏览器插件开发笔记0.1.033