2026-01-17

1.添加Md5工具
This commit is contained in:
2026-01-17 15:47:34 +08:00
parent 1040b383dd
commit 36a7041a06
12 changed files with 256 additions and 9 deletions
+121
View File
@@ -0,0 +1,121 @@
# SQL脚本
## 一、常用表
### 1.users:用户表
```SQL
CREATE TABLE `users` (
`id` int(5) NOT NULL AUTO_INCREMENT COMMENT '顺序号',
`username` varchar(10) NOT NULL COMMENT '用户名',
`password` varchar(100) NOT NULL COMMENT '密码',
`nickName` varchar(20) DEFAULT NULL COMMENT '昵称',
`gender` tinyint(1) DEFAULT NULL COMMENT '性别 0-不详 1-男 2-女',
`country` varchar(20) DEFAULT NULL COMMENT '国家',
`province` varchar(20) DEFAULT NULL COMMENT '省份',
`city` varchar(20) DEFAULT NULL COMMENT '城市',
`avatarUrl` varchar(500) DEFAULT NULL COMMENT '图像地址',
`openId` varchar(100) DEFAULT NULL COMMENT '微信OpenId识别代码',
`phone` varchar(20) DEFAULT NULL COMMENT '电话',
`email` varchar(50) DEFAULT NULL COMMENT '邮箱',
`createTime` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`creator` varchar(10) NOT NULL COMMENT '创建人',
`source` tinyint(1) DEFAULT NULL COMMENT '来源 0-后台 1-小程序 2-网站',
`status` tinyint(1) NOT NULL COMMENT '用户状态 0-正常 1-限制使用 2-完全限制 3-封号 4-注销',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE KEY `username` (`username`) USING BTREE COMMENT 'username不能重复',
UNIQUE KEY `openId` (`openId`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=22 DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT
```
### 2.auth_codes:授权码生成表
```sql
CREATE TABLE `auth_codes` (
`id` int(5) NOT NULL AUTO_INCREMENT,
`code` varchar(10) NOT NULL COMMENT '授权码',
`md5code` varchar(50) DEFAULT NULL COMMENT '加密授权码',
`type` varchar(20) NOT NULL COMMENT '类型: activate, reset, api',
`useCount` int(3) DEFAULT '0' COMMENT '调用次数',
`createTime` datetime NOT NULL COMMENT '创建时间',
KEY `id` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1020 DEFAULT CHARSET=utf8mb4
```
### 3.sys_parameter:系统参数表
```sql
CREATE TABLE `sys_parameter` (
`id` int(5) NOT NULL AUTO_INCREMENT COMMENT '参数ID',
`sort_id` int(11) DEFAULT '0' COMMENT '排序号',
`is_system` tinyint(1) DEFAULT '0' COMMENT '是否系统参数(0-用户参数 1-系统参数)',
`category` varchar(50) DEFAULT 'default' COMMENT '分类分组',
`type` varchar(20) DEFAULT 'string' COMMENT '参数类型: string, number, boolean, json, text',
`parameter_name` varchar(100) NOT NULL COMMENT '参数名称',
`parameter_value` text COMMENT '参数值',
`description` varchar(500) DEFAULT NULL COMMENT '参数描述',
`status` tinyint(1) DEFAULT '1' COMMENT '状态: 0-禁用 1-启用',
`create_user` varchar(50) DEFAULT NULL COMMENT '创建人',
`create_time` datetime NOT NULL COMMENT '创建时间',
`update_user` varchar(50) DEFAULT NULL COMMENT '更新人',
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE,
KEY `idx_category_status` (`category`,`status`) USING BTREE,
KEY `idx_is_system` (`is_system`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='系统参数配置表'
```
## 二、其他表
### 1.tools_md5_dict:Md5解密
```Sql
-- 创建字符MD5编码字典表(最终版)
CREATE TABLE `tool_md5_dict` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`str` varchar(255) NOT NULL COMMENT '原始字符',
`md5` varchar(255) NOT NULL COMMENT 'MD5编码',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_char` (`char`) COMMENT '确保数字字符唯一,避免重复存储',
KEY `idx_md5` (`md5`) COMMENT 'MD5值索引,提升反向查询效率'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='数字字符MD5编码字典表'
```
## 三、备份表
### 1.users_log:用户数据变更日志表
```sql
CREATE TABLE `users_log` (
`logId` int(11) NOT NULL AUTO_INCREMENT COMMENT '日志ID',
`operation` varchar(10) NOT NULL COMMENT '操作方法: UPDATE/DELETE',
`operator` varchar(10) NOT NULL COMMENT '操作人',
`operationTime` datetime NOT NULL COMMENT '操作时间',
`dataType` varchar(10) NOT NULL COMMENT '数据类型: OLD(旧数据)/NEW(新数据)',
`id` int(5) DEFAULT NULL COMMENT '用户ID',
`username` varchar(10) DEFAULT NULL COMMENT '用户名',
`password` varchar(500) DEFAULT NULL COMMENT '密码',
`nickName` varchar(20) DEFAULT NULL COMMENT '昵称',
`gender` tinyint(1) DEFAULT NULL COMMENT '性别 0-不详 1-男 2-女',
`country` varchar(20) DEFAULT NULL COMMENT '国家',
`province` varchar(20) DEFAULT NULL COMMENT '省份',
`city` varchar(20) DEFAULT NULL COMMENT '城市',
`avatarUrl` varchar(500) DEFAULT NULL COMMENT '图像地址',
`openId` varchar(100) DEFAULT NULL COMMENT '微信OpenId',
`phone` varchar(20) DEFAULT NULL COMMENT '电话',
`email` varchar(50) DEFAULT NULL COMMENT '邮箱',
`createTime` datetime DEFAULT NULL COMMENT '创建时间',
`creator` varchar(10) DEFAULT NULL COMMENT '创建人',
`source` tinyint(1) DEFAULT NULL COMMENT '来源 0-后台 1-小程序 2-网站',
`status` tinyint(1) DEFAULT NULL COMMENT '用户状态',
PRIMARY KEY (`logId`) USING BTREE,
KEY `idx_user_id` (`id`),
KEY `idx_operation_time` (`operationTime`),
KEY `idx_operation` (`operation`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户操作日志表'
```
+1 -1
View File
@@ -98,6 +98,7 @@
<scope>annotationProcessor</scope>
</dependency>
<!-- 日志记录工具类 -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
@@ -133,5 +134,4 @@
</plugin>
</plugins>
</build>
</project>
@@ -0,0 +1,14 @@
package cn.lailab.toolbox.beans.tools;
import java.util.Date;
import lombok.Data;
@Data
public class ToolMd5 {
int id;
String str;
String md5;
Date createTime;
String authCode;
}
@@ -6,7 +6,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class ToolController {
@RequestMapping("/JiSuanQi")
@RequestMapping("/tools/JiSuanQi")
public String JiSuanQi() {
return "tools/JiSuanQi/JiSuanQi.html";
}
@@ -0,0 +1,16 @@
package cn.lailab.toolbox.controller.tools;
import org.springframework.web.bind.annotation.RestController;
import cn.lailab.toolbox.beans.tools.ToolMd5;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
@RestController
public class ToolMd5Controller {
@RequestMapping("/tools/insertMd5")
public String insertToolMd51String(@RequestParam ToolMd5 ToolMd5) {
return "12345";
}
}
@@ -0,0 +1,25 @@
package cn.lailab.toolbox.mapper;
import org.apache.ibatis.annotations.Mapper;
import cn.lailab.toolbox.beans.tools.ToolMd5;
@Mapper
public interface ToolMd5Mapper {
/**
* 添加Md5到库里
*
* @param toolMd5
* @return
*/
int insertToolMd5(ToolMd5 toolMd5);
/**
* 获取对用的Md5信息
*
* @param toolMd5
* @return
*/
ToolMd5 selectToolMd5(ToolMd5 toolMd5);
}
@@ -0,0 +1,12 @@
package cn.lailab.toolbox.service;
import org.springframework.stereotype.Service;
import cn.lailab.toolbox.beans.tools.ToolMd5;
@Service
public interface ToolMd5Service {
int insertToolMd5(ToolMd5 toolMd5);
ToolMd5 selectToolMd5(ToolMd5 toolMd5);
}
@@ -0,0 +1,24 @@
package cn.lailab.toolbox.service.impl;
import org.springframework.beans.factory.annotation.Autowired;
import cn.lailab.toolbox.beans.tools.ToolMd5;
import cn.lailab.toolbox.mapper.ToolMd5Mapper;
import cn.lailab.toolbox.service.ToolMd5Service;
public class ToolMd5ServiceImpl implements ToolMd5Service {
@Autowired
ToolMd5Mapper toolMd5Mapper;
@Override
public int insertToolMd5(ToolMd5 toolMd5) {
return toolMd5Mapper.insertToolMd5(toolMd5);
}
@Override
public ToolMd5 selectToolMd5(ToolMd5 toolMd5) {
return toolMd5Mapper.selectToolMd5(toolMd5);
}
}
+2 -2
View File
@@ -33,7 +33,7 @@ mybatis:
# mapper-locations: classpath:mapper/*Mapper.xml #mapper的映射文件
mapper-locations: classpath:mapper/**/*.xml
# 2. 配置实体类的别名包(这样在 XML 中可以直接用类名,不用写全限定名)
type-aliases-package: cn.lailab.toolbox.beans.domain
type-aliases-package: cn.lailab.toolbox.beans.domain,cn.lailab.toolbox.beans.other
# 3. 开启驼峰命名自动转换(比如数据库字段 user_name 自动映射到实体类属性 userName)
# configuration:
# map-underscore-to-camel-case: true
@@ -46,7 +46,7 @@ logging:
level:
org.springframework.web: info
org.hibernate.SQL: debug
cn.lailab: info
cn.lailab.toolbox: info
logback:
rollingpolicy:
max-file-size: 10MB
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.lailab.toolbox.mapper.ToolMd5Mapper">
<insert id="insertToolMd5" parameterType="toolMd5">
insert into tool_md5_dict(str,md5)
values(#{str}, #{md5});
</insert>
<select id="selectToolMd5" resultMap="toolMd5">
select id,str,md5,create_time from tool_md5_dict;
</select>
</mapper>
@@ -53,12 +53,12 @@
/* 功能按钮(AC、+/-、% */
.func-btn {
background-color: #e6f7ff;
color: #1890ff;
background-color: #e3b0a1;
color: #dd4d20;
}
.func-btn:active {
background-color: #bae7ff;
background-color: #ea8363;
}
/* 数字按钮 */
@@ -73,12 +73,12 @@
/* 运算符按钮(天蓝色主题) */
.op-btn {
background-color: #1890ff;
background-color: #dd4d20;
color: #ffffff;
}
.op-btn:active {
background-color: #096dd9;
background-color: #c76a4e;
}
/* 0号按钮占两列 */
@@ -0,0 +1,23 @@
package cn.lailab.toolbox.service;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import cn.lailab.toolbox.beans.tools.ToolMd5;
@SpringBootTest
public class ToolMd5ServiceTest {
// @Autowired
// ToolMd5Service toolMd5Service;
@Test
public void insertToolMd5Tests() {
// ToolMd5 toolMd5 = new ToolMd5();
// toolMd5.setStr("12345");
// toolMd5.setMd5("34556");
// int rst = toolMd5Service.insertToolMd5(toolMd5);
System.out.println("返回:");
}
}