重构:🔥 基于阿里巴巴 Java 开发手册(黄山版)重构各表基本结构(简化列名)

1.MySQL数据库>建表规约>第9条:
【强制】表必备三字段:id,create_time,update_time。
说明:其中 id 必为主键,类型为 bigint unsigned、单表时自增、步长为 1。create_time,update_time 的类型均为datetime 类型,如果要记录时区信息,那么类型设置为 timestamp。
个人理解:简化列名的目的是为了后续能抽取更多公共能力
2.MySQL数据库>SQL语句>第10条:
【推荐】SQL 语句中表的别名前加 as,并且以 t1、t2、t3、...的顺序依次命名。
说明:
  1)别名可以是表的简称,或者是依照表在 SQL 语句中出现的顺序,以 t1、t2、t3 的方式命名。
  2)别名前加 as 使别名更容易识别。
正例:select t1.name from first_table as t1 , second_table as t2 where t1.id = t2.id;
This commit is contained in:
2023-03-06 00:09:11 +08:00
parent 4cd4ad1f82
commit 405c821e2a
61 changed files with 560 additions and 651 deletions

View File

@@ -74,7 +74,7 @@ public class UserCenterController {
@PatchMapping("/basic/info")
public R updateBasicInfo(@Validated @RequestBody UpdateBasicInfoRequest updateBasicInfoRequest) {
UserRequest userRequest = new UserRequest();
userRequest.setUserId(LoginHelper.getUserId());
userRequest.setId(LoginHelper.getUserId());
BeanUtil.copyProperties(updateBasicInfoRequest, userRequest);
userService.update(userRequest);
return R.ok("修改成功");

View File

@@ -46,11 +46,11 @@ INSERT IGNORE INTO `sys_dept` VALUES (8, '研发二组', 3, '系统初始部门'
-- 初始化默认角色
INSERT IGNORE INTO `sys_role` VALUES (1, '超级管理员', 'admin', 1, '系统初始角色', 1, 1, 1, NOW(), 1, NOW());
INSERT IGNORE INTO `sys_role` VALUES (2, '测试人员', 'test', 5, '系统初始角色', 2, 2, 1, NOW(), 1, NOW());
INSERT IGNORE INTO `sys_role` VALUES (2, '测试人员', 'test', 5, '系统初始角色', 2, 1, 1, NOW(), 1, NOW());
-- 初始化默认用户admin/admin123test/123456
INSERT IGNORE INTO `sys_user` VALUES (1, 'admin', '超级管理员', '9802815bcc5baae7feb1ae0d0566baf2', 1, 'charles7c@126.com', '18888888888', NULL, '系统初始用户', 1, NOW(), 1, 1, NOW(), 1, NOW());
INSERT IGNORE INTO `sys_user` VALUES (2, 'test', '测试员', '8e114197e1b33783a00542ad67e80516', 2, NULL, NULL, NULL, '系统初始用户', 2, NOW(), 2, 1, NOW(), 1, NOW());
INSERT IGNORE INTO `sys_user` VALUES (2, 'test', '测试员', '8e114197e1b33783a00542ad67e80516', 2, NULL, NULL, NULL, '系统初始用户', 2, NOW(), 5, 1, NOW(), 1, NOW());
-- 初始化默认角色和菜单关联数据
INSERT IGNORE INTO `sys_role_menu` VALUES (2, 1000);

View File

@@ -1,11 +1,11 @@
-- liquibase formatted sql
-- changeset Charles7c:1
CREATE TABLE IF NOT EXISTS `sys_menu` (
`menu_id` bigint(20) unsigned AUTO_INCREMENT COMMENT '菜单ID',
`menu_name` varchar(255) NOT NULL COMMENT '菜单名称',
CREATE TABLE IF NOT EXISTS `sys_menu` (
`id` bigint(20) unsigned AUTO_INCREMENT COMMENT 'ID',
`title` varchar(255) NOT NULL COMMENT '菜单标题',
`parent_id` bigint(20) unsigned DEFAULT 0 COMMENT '上级菜单ID',
`menu_type` tinyint(1) unsigned DEFAULT 1 COMMENT '菜单类型1目录 2菜单 3按钮)',
`type` tinyint(1) unsigned DEFAULT 1 COMMENT '菜单类型1目录2菜单3按钮)',
`path` varchar(512) DEFAULT NULL COMMENT '路由地址',
`name` varchar(255) DEFAULT NULL COMMENT '组件名称',
`component` varchar(255) DEFAULT NULL COMMENT '组件路径',
@@ -14,82 +14,82 @@ CREATE TABLE IF NOT EXISTS `sys_menu` (
`is_cache` bit(1) DEFAULT b'0' COMMENT '是否缓存',
`is_hidden` bit(1) DEFAULT b'0' COMMENT '是否隐藏',
`permission` varchar(255) DEFAULT NULL COMMENT '权限标识',
`menu_sort` int(11) unsigned DEFAULT 999 COMMENT '菜单排序',
`status` tinyint(1) unsigned DEFAULT 1 COMMENT '状态1启用 2禁用)',
`sort` int(11) unsigned DEFAULT 999 COMMENT '菜单排序',
`status` tinyint(1) unsigned DEFAULT 1 COMMENT '状态1启用2禁用)',
`create_user` bigint(20) unsigned NOT NULL COMMENT '创建人',
`create_time` datetime NOT NULL COMMENT '创建时间',
`update_user` bigint(20) unsigned NOT NULL COMMENT '修改人',
`update_time` datetime NOT NULL COMMENT '修改时间',
PRIMARY KEY (`menu_id`) USING BTREE,
PRIMARY KEY (`id`) USING BTREE,
INDEX `idx_parent_id`(`parent_id`) USING BTREE,
INDEX `idx_create_user`(`create_user`) USING BTREE,
INDEX `idx_update_user`(`update_user`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='菜单表';
CREATE TABLE IF NOT EXISTS `sys_dept` (
`dept_id` bigint(20) unsigned AUTO_INCREMENT COMMENT '部门ID',
`dept_name` varchar(255) NOT NULL COMMENT '部门名称',
CREATE TABLE IF NOT EXISTS `sys_dept` (
`id` bigint(20) unsigned AUTO_INCREMENT COMMENT 'ID',
`name` varchar(255) NOT NULL COMMENT '部门名称',
`parent_id` bigint(20) unsigned DEFAULT 0 COMMENT '上级部门ID',
`description` varchar(512) DEFAULT NULL COMMENT '描述',
`dept_sort` int(11) unsigned DEFAULT 999 COMMENT '部门排序',
`status` tinyint(1) unsigned DEFAULT 1 COMMENT '状态1启用 2禁用)',
`sort` int(11) unsigned DEFAULT 999 COMMENT '部门排序',
`status` tinyint(1) unsigned DEFAULT 1 COMMENT '状态1启用2禁用)',
`create_user` bigint(20) unsigned NOT NULL COMMENT '创建人',
`create_time` datetime NOT NULL COMMENT '创建时间',
`update_user` bigint(20) unsigned NOT NULL COMMENT '修改人',
`update_time` datetime NOT NULL COMMENT '修改时间',
PRIMARY KEY (`dept_id`) USING BTREE,
PRIMARY KEY (`id`) USING BTREE,
INDEX `idx_parent_id`(`parent_id`) USING BTREE,
INDEX `idx_create_user`(`create_user`) USING BTREE,
INDEX `idx_update_user`(`update_user`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='部门表';
CREATE TABLE IF NOT EXISTS `sys_role` (
`role_id` bigint(20) unsigned AUTO_INCREMENT COMMENT '角色ID',
`role_name` varchar(255) NOT NULL COMMENT '角色名称',
`role_code` varchar(255) DEFAULT NULL COMMENT '角色编码',
`data_scope` tinyint(1) DEFAULT 4 COMMENT '数据权限1全部数据权限 2本部门及以下数据权限 3本部门数据权限 4仅本人数据权限 5自定义数据权限)',
CREATE TABLE IF NOT EXISTS `sys_role` (
`id` bigint(20) unsigned AUTO_INCREMENT COMMENT 'ID',
`name` varchar(255) NOT NULL COMMENT '角色名称',
`code` varchar(255) NOT NULL COMMENT '角色编码',
`data_scope` tinyint(1) DEFAULT 4 COMMENT '数据权限1全部数据权限2本部门及以下数据权限3本部门数据权限4仅本人数据权限5自定义数据权限)',
`description` varchar(512) DEFAULT NULL COMMENT '描述',
`role_sort` int(11) unsigned DEFAULT 999 COMMENT '角色排序',
`status` tinyint(1) unsigned DEFAULT 1 COMMENT '状态1启用 2禁用)',
`sort` int(11) unsigned DEFAULT 999 COMMENT '角色排序',
`status` tinyint(1) unsigned DEFAULT 1 COMMENT '状态1启用2禁用)',
`create_user` bigint(20) unsigned NOT NULL COMMENT '创建人',
`create_time` datetime NOT NULL COMMENT '创建时间',
`update_user` bigint(20) unsigned NOT NULL COMMENT '修改人',
`update_time` datetime NOT NULL COMMENT '修改时间',
PRIMARY KEY (`role_id`) USING BTREE,
PRIMARY KEY (`id`) USING BTREE,
INDEX `idx_create_user`(`create_user`) USING BTREE,
INDEX `idx_update_user`(`update_user`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='角色表';
CREATE TABLE IF NOT EXISTS `sys_role_menu` (
CREATE TABLE IF NOT EXISTS `sys_role_menu` (
`role_id` bigint(20) unsigned NOT NULL COMMENT '角色ID',
`menu_id` bigint(20) unsigned NOT NULL COMMENT '菜单ID',
PRIMARY KEY (`role_id`,`menu_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='角色和菜单关联表';
CREATE TABLE IF NOT EXISTS `sys_role_dept` (
CREATE TABLE IF NOT EXISTS `sys_role_dept` (
`role_id` bigint(20) unsigned NOT NULL COMMENT '角色ID',
`dept_id` bigint(20) unsigned NOT NULL COMMENT '部门ID',
PRIMARY KEY (`role_id`,`dept_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='角色和部门关联表';
CREATE TABLE IF NOT EXISTS `sys_user` (
`user_id` bigint(20) unsigned AUTO_INCREMENT COMMENT '用户ID',
CREATE TABLE IF NOT EXISTS `sys_user` (
`id` bigint(20) unsigned AUTO_INCREMENT COMMENT 'ID',
`username` varchar(255) NOT NULL COMMENT '用户名',
`nickname` varchar(255) DEFAULT NULL COMMENT '昵称',
`password` varchar(255) DEFAULT NULL COMMENT '密码',
`gender` tinyint(1) unsigned DEFAULT 0 COMMENT '性别0未知 1男 2女)',
`gender` tinyint(1) unsigned DEFAULT 0 COMMENT '性别0未知12女)',
`email` varchar(255) DEFAULT NULL COMMENT '邮箱',
`phone` varchar(255) DEFAULT NULL COMMENT '手机号码',
`avatar` varchar(255) DEFAULT NULL COMMENT '头像地址',
`description` varchar(512) DEFAULT NULL COMMENT '描述',
`status` tinyint(1) unsigned DEFAULT 1 COMMENT '状态1启用 2禁用)',
`status` tinyint(1) unsigned DEFAULT 1 COMMENT '状态1启用2禁用)',
`pwd_reset_time` datetime DEFAULT NULL COMMENT '最后一次修改密码时间',
`dept_id` bigint(20) unsigned DEFAULT NULL COMMENT '部门ID',
`dept_id` bigint(20) unsigned NOT NULL COMMENT '部门ID',
`create_user` bigint(20) unsigned NOT NULL COMMENT '创建人',
`create_time` datetime NOT NULL COMMENT '创建时间',
`update_user` bigint(20) unsigned NOT NULL COMMENT '修改人',
`update_time` datetime NOT NULL COMMENT '修改时间',
PRIMARY KEY (`user_id`) USING BTREE,
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `uk_username`(`username`) USING BTREE,
UNIQUE INDEX `uk_email`(`email`) USING BTREE,
INDEX `idx_dept_id`(`dept_id`) USING BTREE,
@@ -97,14 +97,14 @@ CREATE TABLE IF NOT EXISTS `sys_user` (
INDEX `idx_update_user`(`update_user`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户表';
CREATE TABLE IF NOT EXISTS `sys_user_role` (
CREATE TABLE IF NOT EXISTS `sys_user_role` (
`user_id` bigint(20) unsigned NOT NULL COMMENT '用户ID',
`role_id` bigint(20) unsigned NOT NULL COMMENT '角色ID',
PRIMARY KEY (`user_id`,`role_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户和角色关联表';
CREATE TABLE IF NOT EXISTS `sys_log` (
`log_id` bigint(20) unsigned AUTO_INCREMENT COMMENT '日志ID',
`id` bigint(20) unsigned AUTO_INCREMENT COMMENT 'ID',
`description` varchar(255) NOT NULL COMMENT '日志描述',
`module` varchar(255) NOT NULL COMMENT '所属模块',
`request_url` varchar(512) NOT NULL COMMENT '请求URL',
@@ -115,7 +115,7 @@ CREATE TABLE IF NOT EXISTS `sys_log` (
`response_headers` text DEFAULT NULL COMMENT '响应头',
`response_body` mediumtext DEFAULT NULL COMMENT '响应体',
`elapsed_time` bigint(20) unsigned NOT NULL COMMENT '请求耗时ms',
`status` tinyint(1) unsigned DEFAULT 1 COMMENT '操作状态1成功 2失败)',
`status` tinyint(1) unsigned DEFAULT 1 COMMENT '操作状态1成功2失败)',
`client_ip` varchar(255) DEFAULT NULL COMMENT '客户端IP',
`location` varchar(512) DEFAULT NULL COMMENT 'IP归属地',
`browser` varchar(255) DEFAULT NULL COMMENT '浏览器',
@@ -123,6 +123,6 @@ CREATE TABLE IF NOT EXISTS `sys_log` (
`exception_detail` mediumtext DEFAULT NULL COMMENT '异常详情',
`create_user` bigint(20) unsigned DEFAULT NULL COMMENT '创建人',
`create_time` datetime NOT NULL COMMENT '创建时间',
PRIMARY KEY (`log_id`) USING BTREE,
INDEX `idx_createUser`(`create_user`) USING BTREE
PRIMARY KEY (`id`) USING BTREE,
INDEX `idx_create_user`(`create_user`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='系统日志表';