📄 【进阶】单体版本CRUD
内部资料,请刷新扫码登录
pigcloud 2023/8/13
请务必按照本文档的 包名 和 项目名 进行初始化,其他内容请了解 feign、mybatis 的包扫描规则。
# 1. 创建新的 Maven 子模块
# 1.1 执行 archetype 生成
- 特别注意: 在 pigx 根目录执行如下命令, Windows 可直接运行,请勿使用 PowerShell; Mac/Linux 中将 ^ 替换 \
mvn org.apache.maven.plugins:maven-archetype-plugin:3.1.0:generate ^
-Dproject=pigx ^
-DjavaVersion=17 ^
-DgroupId=com.pig4cloud ^
-DartifactId=demo ^
-Dversion=5.7.0 ^
-DarchetypeGroupId=com.pig4cloud.archetype ^
-DarchetypeArtifactId=pigx-gen ^
-DarchetypeVersion=5.7.0 ^
-DarchetypeCatalog=local
mvn org.apache.maven.plugins:maven-archetype-plugin:3.1.0:generate \
-Dproject=pigx \
-DjavaVersion=17 \
-DgroupId=com.pig4cloud \
-DartifactId=demo \
-Dversion=5.7.0 \
-DarchetypeGroupId=com.pig4cloud.archetype \
-DarchetypeArtifactId=pigx-gen \
-DarchetypeVersion=5.7.0 \
-DarchetypeCatalog=local
参数 | 值 | 备注 |
---|---|---|
-Dproject | pigx | 项目名称,专属版本需要修改 |
-DjavaVersion | 17 | 使用Java版本,只有8、17两个选项 |
-DgroupId | com.pig4cloud | 项目包名前缀 ,专属版本需要修改 |
-DartifactId | demo | 新增模块名称 |
-Dversion | 5.7.0 | 项目版本号 |
-DarchetypeGroupId | com.pig4cloud.archetype | 【固定值】,专属版本不需要修改 |
-DarchetypeArtifactId | pigx-gen | 【固定值】,专属版本不需要修改 |
-DarchetypeVersion | 5.7.0 | 【固定值】,archetype版本 |
-DarchetypeCatalog | local | 【固定值】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 菜单维护
执行代码生成包(3.2 中的 demo_menu.sql)中的 SQL 脚本(在 pigxx 数据库)。
- 当代码生成基础信息中配置此功能的【所属菜单】时,会自动维护相关的菜单和按钮,不需要手动执行SQL脚本。
# 4. 角色分配权限
最重要的一步:给角色分配权限(角色管理 > 权限)。在重新启动前端并重新登录后,请强制刷新浏览器,查看 demo 功能是否生效。