ikmkj
|
23ced99e20
|
feat: 添加XSS防护工具函数并优化多个功能模块
refactor(前端): 重构登录页面和用户状态管理逻辑
fix(后端): 修复用户密码更新逻辑和错误提示
feat(后端): 实现分页搜索功能并优化文件删除逻辑
perf(前端): 优化笔记编辑器自动保存和状态提示
fix(后端): 增强图片上传安全验证
style(前端): 调整笔记预览页面按钮权限控制
chore: 更新生产环境配置和测试数据库依赖
feat(前端): 添加虚拟列表组件优化性能
fix(前端): 修复笔记编辑器返回逻辑和状态保存
refactor(前端): 优化axios拦截器错误处理逻辑
docs: 更新方法注释和参数说明
|
2026-03-04 18:29:52 +08:00 |
|
ikmkj
|
5ea9c776e7
|
feat(笔记预览): 实现大文件分块加载功能
添加分块加载API接口及前端实现,支持大文件(>500KB)的分页加载,提升大文件预览体验
后端实现分块逻辑并添加权限检查,前端添加加载提示和滚动加载功能
|
2026-03-04 16:43:25 +08:00 |
|
ikmkj
|
90626e73d9
|
refactor: 统一ID类型为Long并优化代码安全性和性能
修复用户删除接口的ID类型从Integer改为Long
移除未使用的Bouncy Castle依赖
添加dompurify依赖增强XSS防护
修复SQL表定义中的bigintBIGINT语法错误
优化图片预览接口的安全检查和错误处理
添加Vditor渲染引擎预加载和图片懒加载
统一分组和文件接口的ID类型为Long
增强前端用户状态管理,添加token过期检查
优化Markdown内容渲染流程和图片URL处理
|
2026-03-04 16:27:42 +08:00 |
|
ikmkj
|
25b52f87aa
|
refactor: 统一错误处理并优化代码
- 移除重复的错误提示,统一在axios拦截器中处理
- 优化XSS拦截器,添加请求头白名单
- 修复注册码服务的日期处理问题
- 添加403权限错误处理
- 优化分组查询参数处理
|
2026-03-03 23:41:20 +08:00 |
|
ikmkj
|
a4f95e7315
|
feat(用户管理): 添加用户角色功能并实现权限控制
- 在用户表中添加role字段并设置默认值为'USER'
- 前端添加isAdmin getter判断用户角色
- 后端实现角色字段的VO映射和默认值设置
- 为关键接口添加@PreAuthorize权限控制
- 移除图片控制器中冗余的权限检查代码
|
2026-03-03 21:09:42 +08:00 |
|
ikmkj
|
375ccb89ff
|
feat: 添加用户角色字段并实现权限控制
fix(security): 修复重放攻击拦截器的时间戳验证漏洞
refactor(security): 重构验证码工具类使用线程安全实现
perf(login): 优化登录锁定工具类性能并添加定期清理
fix(editor): 修复笔记编辑器空指针问题
style: 清理数据库索引脚本中的冗余注释
fix(api): 修复前端API调用参数编码问题
feat(image): 实现图片名称同步服务
refactor(markdown): 重构Markdown服务分离图片名称同步逻辑
fix(xss): 添加HTML转义函数防止XSS攻击
fix(user): 修复用户服务权限加载问题
fix(rate-limit): 修复速率限制拦截器并发问题
fix(axios): 生产环境隐藏详细错误信息
fix(image): 修复图片上传和删除的权限验证
refactor(captcha): 重构验证码工具类使用并发安全实现
fix(jwt): 修复JWT过滤器空指针问题
fix(export): 修复笔记导出XSS漏洞
fix(search): 修复Markdown搜索SQL注入问题
fix(interceptor): 修复重放攻击拦截器逻辑错误
fix(controller): 修复用户控制器空指针问题
fix(security): 修复nonce生成使用密码学安全方法
|
2026-03-03 20:48:40 +08:00 |
|
ikmkj
|
d54719d82d
|
perf: 优化系统性能和资源管理
- 优化JWT解析器性能,复用JwtParser减少重复创建
- 使用Slf4j日志框架替代System.out.println
- 添加图片压缩功能,减少存储和带宽消耗
- 预编译正则表达式提升Markdown图片提取性能
- 重构限流拦截器,使用ConcurrentHashMap提高并发性能
- 添加数据库索引优化查询性能
- 为MarkdownFile实体添加autoResultMap配置
|
2026-03-03 19:14:48 +08:00 |
|
ikmkj
|
64daf3cb0b
|
fix(XSSInterceptor): 增强XSS拦截器对请求头的处理
修改XSS拦截器对请求头的检查逻辑,当检测到XSS攻击时直接拒绝请求并返回400错误响应。新增错误响应写入方法,记录攻击日志。
|
2026-03-03 18:58:03 +08:00 |
|
ikmkj
|
07454a28d2
|
feat(安全): 增加验证码和安全验证功能
refactor(XSS): 重构XSS过滤逻辑并添加JSON反序列化过滤
feat(防重放): 前端添加防重放攻击机制
fix(验证码): 优化验证码生成和异常处理
style: 格式化代码并修复部分警告
|
2026-03-03 18:45:08 +08:00 |
|
ikmkj
|
61aeba9c65
|
feat: 增强安全组件并添加内存保护机制
1. 重构 ReplayAttackInterceptor、RateLimitInterceptor、CaptchaUtil 和 LoginLockUtil,使用 LRUCache 和读写锁优化内存管理
2. 新增 MemoryProtector 类实现内存监控和保护机制
3. 为所有内存缓存组件添加容量限制和过期清理策略
4. 更新 .gitignore 文件配置
|
2026-03-03 18:23:28 +08:00 |
|
ikmkj
|
23929a974f
|
feat(安全): 添加验证码和登录安全增强功能
新增验证码功能用于敏感操作,包括删除账号、修改密码等
添加登录失败锁定机制和限流策略
实现防重放攻击和XSS防护增强
重构XSS拦截器使用请求包装器
|
2026-03-03 17:49:50 +08:00 |
|
ikmkj
|
5a24569ebd
|
perf: 优化数据库连接与笔记预览加载性能
|
2026-03-03 17:28:43 +08:00 |
|
ikmkj
|
6d5233cb4b
|
refactor: 优化图片处理与数据库连接配置
|
2026-03-03 17:16:44 +08:00 |
|
ikmkj
|
a99696ff7a
|
feat: 优化分类选择器与笔记移动功能
|
2026-03-03 16:57:10 +08:00 |
|
ikmkj
|
392cc52fd2
|
feat: 实现笔记编辑器的自动保存功能与UI优化
refactor: 重构用户登录注册逻辑与数据验证
fix: 修复图片上传安全漏洞与路径处理问题
perf: 优化笔记列表分页加载与滚动性能
style: 改进侧边栏菜单的视觉设计与交互体验
chore: 更新环境变量与数据库连接配置
docs: 添加用户信息视图对象的Swagger文档
test: 增加用户注册登录的输入验证测试
ci: 配置JWT密钥环境变量与安全设置
build: 调整前端构建配置与模块加载方式
|
2026-03-02 02:01:01 +08:00 |
|
ikmkj
|
0426ad22b7
|
fix(config): 更新API基础URL配置和开发环境代理设置
- 修改前端开发环境API基础URL添加/api路径前缀
- 调整web环境配置中API基础URL为相对路径
- 在后端Markdown控制器中添加测试接口的非生产环境限制
- 更新Vite代理配置注释说明路径重写功能
|
2026-01-26 07:13:02 +08:00 |
|
ikmkj
|
95393ab517
|
refactor(database): 更新数据库配置和实体映射
- 修改数据库连接URL地址
- 为所有实体类添加@TableField注解映射数据库字段
- 使用反引号标识符包裹表名和字段名
- 更新SQL查询语句使用明确字段列表
- 在配置文件中启用MyBatis安全模式防止SQL注入
- 添加MarkdownFileVO中groupingName字段的exist = false标识
|
2026-01-08 19:44:22 +08:00 |
|
ikmkj
|
363918b3f7
|
feat(security): 添加CORS配置并调整跨域策略
- 在SecurityConfig中添加CORS配置,允许所有源、方法和头部
- 设置CORS凭证为false以避免与通配符冲突
- 在WebConfig中将allowCredentials设置为false
- 更新注释说明凭证配置的变更原因
|
2026-01-08 18:07:20 +08:00 |
|
ikmkj
|
bd0188605d
|
feat(config): 更新项目配置以支持MySQL数据库和环境变量
- 添加docker环境变量配置文件包含数据库连接信息
- 更新前端环境变量中的API基础URL地址
- 修改后端应用配置以支持环境变量读取数据库配置
- 在Docker Compose中添加环境变量传递和env_file支持
- 配置生产环境下的MySQL数据源和MyBatis-Plus设置
- 添加服务器镜像导入和数据库用户创建说明文档
|
2026-01-07 14:58:16 +08:00 |
|
ikmkj
|
a0991db83e
|
feat(database): 添加 MySQL 数据库支持并迁移数据表结构
- 新增 MySQL 5.7.44 建表脚本,包含分组、图片、Markdown文件等7张表
- 添加 SQLite 转 MySQL 的数据库迁移脚本
- 配置开发环境使用 MySQL 数据源连接
- 更新生产环境配置注释 SQLite 配置并预留 MySQL 配置位置
- 修改前端笔记编辑器保存逻辑,完善笔记更新功能
- 替换 SQLite 驱动为 MySQL 连接器依赖
- 添加 commons-codec 依赖用于 SHA256 计算功能
|
2026-01-06 21:18:06 +08:00 |
|
ikmkj
|
49646658ce
|
feat(note): 实现笔记创建时后端生成ID功能
- 在CreateNoteDialog组件中导入updateMarkdown API并修改创建逻辑
- 创建笔记时传递null ID让后端生成唯一标识符
- 修改HomePage组件中的笔记创建和更新处理逻辑
- 在NoteEditor组件中获取后端返回的完整笔记数据包括新生成的ID
- 新创建的笔记将添加到列表开头并正确更新显示
|
2026-01-06 18:31:23 +08:00 |
|
ikmkj
|
701a621552
|
fix(config): 更新API地址和配置设置
- 修改前端环境配置文件中的API基础URL地址
- 切换路由模式从history到hash模式以解决部署问题
- 注释掉axios的withCredentials配置避免跨域问题
- 修复后端JWT认证过滤器中的代码注释和逻辑结构
- 更新Docker容器时区设置为上海时区
- 修复笔记编辑器中保存数据时字段缺失的问题
- 添加Vite构建输出目录和资源目录配置
- 恢复后端开发环境数据库路径配置
|
2026-01-06 17:58:24 +08:00 |
|
ikmkj
|
3e252e0043
|
feat(security): 完善JWT认证与权限拒绝处理逻辑
- 为JwtAccessDeniedHandler添加详细注释和中文错误提示- 在JwtAuthenticationEntryPoint中优化响应编码和状态码设置
- 统一使用UTF-8字符编码确保中文正确显示- 设置响应内容类型为JSON格式
- 明确设置HTTP状态码403和401对应权限问题- 添加WebConfig中静态资源处理器配置注释- 配置"/uploads/**"路径映射到服务器"uploads/"目录- 更新生肖文档结构,增加章节标题和内容调整
|
2025-10-12 22:14:35 +08:00 |
|
|
|
fd3e2a450f
|
fix(biji): 修复图片上传和预览相关问题
-优化图片预览接口返回信息,提高错误处理的可读性- 在图片上传时添加基础 URL,确保正确的图片路径
- 更新 Vite 配置,修复开发环境的代理设置
|
2025-08-14 16:55:56 +08:00 |
|
|
|
49eba5ee96
|
refactor(image): 优化图片上传功能
- 修改后端接口,使用 @RequestPart 注解替代 @RequestParam
- 前端调整图片上传逻辑,直接发送 File 对象
- 简化前端上传成功后的处理流程
|
2025-08-14 16:19:13 +08:00 |
|
|
|
56465ffa75
|
fix(biji): 优化笔记编辑器自动保存机制并修复相关问题
- 实现了更可靠的自动保存功能,仅在用户停止输入后触发保存操作
- 修复了切换笔记时意外触发自动保存的问题
- 优化了重命名文件后的预览更新逻辑
- 调整了保存成功后的状态清理策略,提高了用户体验
|
2025-08-14 14:44:27 +08:00 |
|
ikmkj
|
daf8c98789
|
refactor(biji-houdaun): 重构数据库连接配置并删除计划文件
- 在 application-dev.yml 中更新了数据库连接 URL,恢复为原始路径
- 删除了 plan/index.md 文件,包括 HTML、CSS 和页面相关内容
|
2025-08-09 01:46:30 +08:00 |
|
|
|
d47c8d2009
|
refactor(biji): 更新 API基础路径和相关调用
- 将 VITE_API_BASE_URL 从 https://biji-houdaun.311169.xyz 修改为 /api- 更新前端 API 调用路径,统一添加 /api前缀
- 修改后端 SecurityConfig 和 SystemController,以适应新的 API 路径
|
2025-08-07 15:50:35 +08:00 |
|
ikmkj
|
72c916da4d
|
feat(auth): 实现登录认证和权限控制功能
- 添加用户登录和登出功能
- 实现 Token 过期和无效的错误处理
- 添加路由权限控制,未登录用户重定向到登录页
- 优化登录失败的错误提示
- 修复搜索功能的返回数据问题
|
2025-08-06 23:42:18 +08:00 |
|
|
|
b28446c4b6
|
feat(image): 添加图片清理功能- 新增 FileStorageService 用于文件上传、下载和删除操作- 实现 ImageCleanupService 清理冗余图片
- 添加 ImageCleanupController 提供手动清理图片的 API
- 创建 ImageCleanupScheduler定时清理冗余图片
- 更新相关 Mapper 接口,增加必要的查询和删除方法
|
2025-08-06 17:29:11 +08:00 |
|
|
|
67f189995e
|
refactor(biji-houdaun): 重构用户认证方法并添加安全工具类
- 将 MarkdownController 中的 isUserAuthenticated 方法移至 SecurityUtil 工具类- 在 SecurityUtil 中添加以下新方法:
- getCurrentUsername - getCurrentUserDetails
- hasRole
- hasPermission - isAdmin
- 更新 MarkdownController 中的相关调用,使用 SecurityUtil 的静态方法
|
2025-08-06 15:22:00 +08:00 |
|
|
|
5f608b7573
|
feat(note): 增加私密笔记功能
- 在 MarkdownFile 表中添加 is_private 字段,用于标记笔记是否私密- 修改 MarkdownController 中的 getMarkdownContent 方法,增加对私密笔记的处理逻辑
- 更新 MarkdownFileService 接口和 MarkdownFileServiceImpl 实现类,支持根据认证状态获取笔记内容
- 优化未认证用户访问私密笔记时的处理,只显示标题不显示内容
|
2025-08-06 14:49:05 +08:00 |
|
|
|
7bf4ad137d
|
refactor(biji-houdaun): 调整注册状态接口路径
- 将 "/api/system/registration/status" 接口路径修改为 "/system/registration/status"- 此修改简化了接口路径,去除了不必要的 "api"前缀
|
2025-08-06 11:02:42 +08:00 |
|
ikmkj
|
1cac44d5b3
|
Merge remote-tracking branch 'origin/master'
|
2025-08-04 19:45:59 +08:00 |
|
ikmkj
|
c188437ed5
|
refactor: 简化实体类并使用esbuild优化构建
Co-authored-by: aider (openai/gemini-2.5-pro) <aider@aider.chat>
|
2025-08-04 19:33:00 +08:00 |
|
|
|
8a52ad708f
|
feat(security): 完善用户认证和权限管理
- 添加密码编码器,增强密码安全性
- 配置安全过滤链,实现无状态会话管理
- 更新用户详细信息获取逻辑,保留现有行为
|
2025-08-04 16:23:02 +08:00 |
|
|
|
b4f431aa03
|
build: 移除配置文件并清理MCP服务设置
|
2025-08-04 11:55:16 +08:00 |
|
ikmkj
|
f7c242dc73
|
ci: 更新环境变量并添加前端构建脚本
- 修改 .env.production 文件中的 VITE_API_BASE_URL 为新的后端服务地址- 在 package.json 中添加 build:frontend 脚本,用于前端项目构建
- 注释掉 pom.xml 中的 Docker 镜像构建配置
|
2025-08-02 23:21:31 +08:00 |
|
ikmkj
|
81678da683
|
refactor: 使用 Hutool工具类优化空值判断- 在多个控制器和服务实现类中,将原始的空值判断替换为 Hutool 工具类中的方法
- 使用 ObjectUtil.isNull() 替换原始的 == null 判断
- 使用 ObjectUtil.isNotNull() 替换原始的 != null 判断
- 在某些情况下,使用 StrUtil.isBlank() 替换原始的 == null 判断,以更准确地检查字符串是否为空
|
2025-08-02 19:53:47 +08:00 |
|
ikmkj
|
f858a9bcd6
|
feat(security): 根据环境动态配置白名单
- 引入 Environment 接口以获取当前激活的配置文件
- 根据是否为 prod 环境动态设置公共端点的白名单
- 优化了 SecurityConfig 类中的安全过滤链配置
|
2025-08-02 19:42:40 +08:00 |
|
ikmkj
|
2508f07b7b
|
build(biji-houdaun): 优化生产环境配置并调整安全设置
- 修改 pom.xml,使用 spring-boot-maven-plugin 排除生产环境依赖
- 重构 SecurityConfig,简化公共端点配置并移除环境判断逻辑
|
2025-08-02 19:40:44 +08:00 |
|
ikmkj
|
1e7285cb68
|
feat(security): 动态配置公共端点白名单
-引入 Environment 接口以获取当前激活的配置文件
-根据是否为生产环境动态设置公共端点白名单
-优化了 SecurityConfig 类中的安全过滤链配置
|
2025-08-02 19:38:39 +08:00 |
|
ikmkj
|
f4851a80d3
|
build(biji-houdaun): 优化配置文件和依赖管理- 移除生产环境中的 MyBatis-Plus 配置- 在开发环境中添加 MyBatis-Plus 配置
- 在生产环境中禁用 Knife4j- 更新 Knife4j 和 springdoc 依赖为可选
-调整开发和生产环境的依赖范围
|
2025-08-02 19:27:02 +08:00 |
|
ikmkj
|
508eb0aacb
|
build(biji-houdaun): 配置生产环境并优化构建流程
- 新增 production环境配置文件 application-prod.yml
- 更新 Dockerfile,设置生产环境变量
- 为 Knife4j 配置添加环境限制,仅在非生产环境激活
- 在 pom.xml 中添加开发和生产环境配置
- 更新编译打包命令文档,增加生产环境构建指令
|
2025-08-02 19:13:25 +08:00 |
|
ikmkj
|
15ad949da6
|
refactor(biji-houdaun): 调整端口并优化健康检查和跨域配置- 将应用端口从8083 改为8084
- 更新健康检查 URL 以匹配新端口
- 在 pom.xml 中指定镜像名称
- 修改跨域配置,使用 allowedOriginPatterns 允许所有来源
|
2025-08-02 17:18:47 +08:00 |
|
ikmkj
|
3a5ed5b84f
|
build(biji-houdaun): 更新 Docker 配置和健康检查端口
- 修改健康检查端口:将 Dockerfile 中的健康检查 URL 从 http://localhost:8082/actuator/health 更改为 http://localhost:8083/actuator/health
- 更新 Docker 主机:将 pom.xml 中的 dockerHost 从 http://45.204.212.245:2375 更改为 http://127.0.0.1:2375- 调整资源目录:
|
2025-08-02 13:19:58 +08:00 |
|
ikmkj
|
2b3484d4cf
|
feat(security): 优化权限控制并添加用户删除功能
- 更新 SecurityConfig,增加精确控制的公开阅读端点
- 实现用户删除功能,仅允许删除当前登录用户
- 优化用户删除接口,增加安全性检查
|
2025-08-02 12:12:59 +08:00 |
|
ikmkj
|
e10ad4b81c
|
refactor(service): 为服务类添加全局事务管理
- 在 GroupingServiceImpl、ImageServiceImpl、MarkdownFileServiceImpl、RegistrationCodeServiceImpl、SystemSettingServiceImpl、TrashServiceImpl 和 UserServiceImpl 类上添加了 @Transactional 注解- 移除了 GroupingServiceImpl 中的局部 @Transactional 注解
- 此修改确保了每个服务类
|
2025-08-01 22:58:39 +08:00 |
|
ikmkj
|
399c79b756
|
feat(mapper): 添加物理删除功能并优化垃圾清理逻辑
- 在 GroupingMapper 和 MarkdownFileMapper 中添加物理删除方法
- 修改 TrashServiceImpl 中的 cleanTrash 方法,使用新增的物理删除方法
-优化了垃圾清理的 SQL 执行效率
|
2025-08-01 22:50:50 +08:00 |
|
ikmkj
|
15091c315e
|
feat(image): 实现 Markdown 图片文件名同步
- 新增 ImageName 实体类和对应的 Mapper- 在 MarkdownFileService 中添加图片文件名同步方法
- 优化 HomePage 组件,支持实时预览 Markdown 内容
- 新增 MarkdownImageExtractor 工具类,用于提取 Markdown 中的图片文件名
|
2025-08-01 22:25:36 +08:00 |
|