【进阶】单体版本CRUD

1. 使用 pigx archetype 初始化项目

1.1 执行 archetype 生成

# 直接在win + R CMD小黑屏里面执行,不要使用 powershell 或者其他终端
mvn org.apache.maven.plugins:maven-archetype-plugin:3.1.0:generate ^
      -Dproject=pigx ^
      -DjavaVersion=17 ^
      -DgroupId=com.pig4cloud ^
      -DartifactId=demo ^
      -Dversion=5.12.0 ^
      -DarchetypeGroupId=com.pig4cloud.archetype ^
      -DarchetypeArtifactId=pigx-gen ^
      -DarchetypeVersion=5.12.0 ^
      -DarchetypeCatalog=local
参数备注
-Dprojectpigx项目名称,专属版本需要修改
-DjavaVersion17使用Java版本,只有17一个选项
-DgroupIdcom.pig4cloud项目包名前缀 ,专属版本需要修改
-DartifactIddemo新增模块名称 , 不要带特殊字
-Dversion5.12.0项目版本号
-DarchetypeGroupIdcom.pig4cloud.archetype【固定值】,专属版本需要修改
-DarchetypeArtifactIdpigx-gen【固定值】,专属版本需要修改
-DarchetypeVersion5.12.0【固定值】,archetype版本
-DarchetypeCataloglocal【固定值】local

1.2 生成的项目结构如下

demo
  ├── README.md
  ├── demo-api     # api 模块主要存放 实体、feign 调用接口
  │   ├── pom.xml
  │   └── src
  ├── demo-biz    # biz 模块主要存放 controller、业务service、mapper
  │   ├── pom.xml
  │   └── src
  └── pom.xml

1.3 pigx-boot/pom.xml 新增 demo module 依赖

模块依赖顺序

新增的 demo-biz 模块必须放在 pigx-auth 模块之后,否则无法进行鉴权。

  • ① pigx-boot/pom.xml

  • ② 注意引入 demo-biz 在 pigx-auth 依赖之后

  • ③ Maven reload

模块依赖配置

2. 创建库表

-- 使用单体版本的核心库,pigxx_boot 库
USE pigxx_boot;

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- 创建测试表
DROP TABLE IF EXISTS `demo`;
CREATE TABLE `demo` (
  `id` bigint NOT NULL COMMENT '编号',
  `username` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '用户名',
  `password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '密码',
  `del_flag` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT '0' COMMENT '删除标记',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin ROW_FORMAT=DYNAMIC COMMENT='demo 表';

3. 代码生成

3.1 数据源新增

jdbc:mysql://pigx-mysql:3306/pigxx_boot?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&allowPublicKeyRetrieval=true
数据源配置

3.2 生成代码

配置注意事项

选择数据源生成代码时,请注意包名称和模块名称。

代码生成配置

3.3 菜单维护

当代码生成基础信息中配置此功能的【所属菜单】时,会自动维护相关的菜单和按钮,不需要手动执行SQL脚本。

自动维护菜单

4. 角色分配权限

重要步骤

给角色分配权限(角色管理 > 权限)。在重新启动前端并重新登录后,请强制刷新浏览器,查看 demo 功能是否生效。

角色分配权限