- 博客(32)
- 收藏
- 关注
原创 电商后台管理系统:动态路由刷新空白问题分析与解决方案
动态路由刷新空白问题是Vue Router + 权限管理的常见挑战。动态路由添加后,当前路径没有被重新匹配。解决方案的核心是在路由守卫中,当检测到动态路由已加载且当前路径不是静态路由时,返回一个重定向对象,强制Vue Router重新匹配当前路径。解决了页面空白问题保持了良好的用户体验代码改动最小易于理解和维护这套解决方案已在实际项目中验证有效,希望能为遇到类似问题的开发者提供参考。
2026-01-03 19:22:24
683
原创 axios 1.x 请求拦截器最佳实践指南
本文档旨在规范前端项目中 HTTP 请求的处理方式,特别是针对请求参数编码、Content-Type 设置等关键环节。基于 axios 1.x 的现代特性,通过统一规范,提高代码可维护性、降低错误率,并确保前后端数据交互的一致性。
2025-12-08 22:50:32
698
原创 SSH跨平台连接与配置指南
SSH(Secure Shell)是一种加密的网络传输协议,用于在不安全的网络中提供安全的远程登录和其他安全网络服务。它通过在客户端和服务器之间建立加密通道来保护数据传输。
2025-11-01 19:07:48
1077
原创 Activiti 7 工作流技术文档
打开 Camunda Modeler → Camunda 7 → BPMN diagram。将流程 id 改成对应值(如。必须与 BPMN 文件中。保存为 .bpmn 文件。拖节点到画布,设置属性。内的变量名完全一致。
2026-05-03 22:56:57
528
原创 解决linux服务器上java进程突然挂掉的问题
总计:Java 服务占用约 2G,MySQL 占用 1.6G,Apache 占用约 1.2G,合计接近 5G!经过日志输出分析,找到原因了,OOM Killer 杀掉了正式版进程。之前正式版被杀时,内存可能更紧张。现在内存刚好够用,但需要控制。如果业务高峰期内存需求超过 512M,仍可能被杀死。这样既保证正式版稳定运行,又避免 OOM!- 把禅道部署到另一台低配服务器。执行这些命令,找出挂掉的原因!减少禅道 Apache 进程数。迁移禅道到其他服务器。- 或使用禅道云服务。
2026-03-28 19:02:19
458
原创 MySQL服务器表导入本地开发环境
登录本地 MySQL输入密码: 123456查看服务器字符集查看所有数据库字符集查看 trade 数据库字符集统一字符集修改 MySQL 配置文件:my.ini或my.cnf保存并重启 MySQL再次确认sql文件的字符集指定字符集并导出数据库在本地 CMD 导入。
2026-03-24 18:17:17
156
原创 windows环境MySQL 8.0.45及Redis安装教程
VC++ 运行库安装完成之后会重启电脑,重启完之后再次点击安装,选第一个Typical :安装常用功能,适合大多数用户。步骤1:找到 MySQL bin 路径。Redis 使用的是。重启 Redis 服务使配置生效。检查 Redis 使用的配置文件。或者安装所有 VC++ 运行库。步骤3:重新打开 CMD 测试。步骤3:保存并重启 Redis。解决方案:修改正确的配置文件。步骤1:编辑正确的配置文件。如果返回空,说明没有密码。步骤2:找到并修改密码。步骤2:添加环境变量。没什么问题,安装成功。
2026-03-24 15:03:18
633
原创 Nohup 使用技术文档
Nohup 的核心优势简单易用,无需复杂配置适合多实例部署完全符合当前项目的部署文档关键点提醒必须加:否则不会后台运行必须重定向日志停止一定要用 kill:不能直接关闭终端启动后要验证:ps 和 tail 双确认文档版本:1.0最后更新:2026-03-22。
2026-03-22 11:05:31
269
原创 MySQL 数据库备份方案
适用场景:刚接手项目、紧急备份、临时导出数据参数说明:下载到本地查看压缩包内容(不解压)2. 基础方案:全量备份(mysqldump)适用场景:数据量不大、允许一定数据丢失、作为日常备份基础参数详解:推荐:日常使用 gzip,压缩率和速度均衡,兼容性好。安装 pigz(多核加速):2.3 大文件处理技巧当备份文件过大(如 7GB)时,普通编辑器无法打开,推荐以下方法:方法一:在服务器上直接分析方法二:分割文件方法三:恢复到测试库查看2.4 恢复操作2.5 局限性说明全量备份只能恢
2026-03-21 10:01:00
609
原创 Vue 3 源码阅读笔记:ref.ts
get value(): T // 读取时返回类型 Tset value(_: S) // 写入时接受类型 S(默认等于 T)[RefSymbol]: true // 唯一类型标记,用于类型识别使用两个泛型参数T和S是为了支持只读场景(S = never是一个类型层面的标记,编译后消失为什么这样设计?这样可以精确控制 ref 的读写类型,比如计算属性可以是只读的问题答案是什么?访问 ref 对象上的内部标记__v_isRef为什么要判断这个属性?快速、可靠地判断一个对象是不是 ref。
2026-03-12 22:45:47
426
原创 Vue 3 源码学习教程
环境要求: Node.js 16+,pnpm 7+packages/├── reactivity/ # 响应式系统(面试重点)├── runtime-core/ # 运行时核心(渲染、组件)├── runtime-dom/ # 浏览器运行时(DOM操作)├── compiler-core/ # 编译器核心(模板编译)├── compiler-dom/ # 浏览器编译器├── vue/ # 入口,整合所有模块├── shared/ # 工具函数学习顺序: reactivity → runtime
2026-03-10 22:42:25
602
原创 VS Code 中开发 Flutter 的常用命令大全
把这些命令记下来,开发 Flutter 时就能得心应手了!| 查看当前版本 | 确认 Flutter 版本 || 降级 Flutter | 回退到之前版本 || 升级 Flutter | 获取最新功能 || 切换到稳定版 | 切换到稳定频道 || 查看所有频道 | 了解可选版本 || 命令 | 作用 | 使用场景 || 快捷键 | 作用 || 重启分析服务器 || 运行(不调试)|
2026-03-03 17:07:57
530
原创 Flutter Windows 开发环境搭建全攻略
这是一份实战型教程,记录了在 Windows 环境下从零搭建 Flutter 开发环境的完整过程。教程中包含了所有遇到的错误和解决方法,希望能帮助同样在配置环境的朋友少走弯路。适用人群:Windows 开发者,已有 JDK 21(或其他版本)用于其他项目,需要同时配置 Flutter 开发环境。最后更新时间:2026年3月至此,你已经完成了 Flutter Windows 开发环境的全部搭建工作,并成功运行了第一个项目!最终检查清单Flutter SDK 3.13.9 安装完成。
2026-03-01 18:54:53
1450
原创 MySQL 字符集与排序规则技术文档
默认配置已优化:无需额外配置即可获得良好的字符集支持推荐使用默认值提供了最准确的排序按需指定:只有特殊需求字段才需要显式指定排序规则保持一致性:在整个项目中保持字符集和排序规则的统一这样的配置既利用了 MySQL 8.0+ 的新特性,又确保了系统的性能和兼容性。
2025-11-30 15:39:30
836
原创 java基础:TreeMap
/ 按字符串长度排序// 顺序:cat, dog, apple, bananaTreeMap 是一个功能强大的有序映射实现,特别适用于需要按键排序或进行范围查询的场景。它的导航方法和子视图操作提供了灵活的数据访问方式,但需要注意其性能特性与 HashMap 的差异。
2025-11-09 17:04:04
255
原创 java基础:LinkedHashMap
LinkedHashMap通过结合HashMap的快速查找和双向链表的顺序维护,提供了有序的Map实现。它的主要优势在于:保持插入或访问顺序迭代性能优于HashMap非常适合实现LRU缓存API与HashMap完全兼容。
2025-11-09 17:03:53
378
原创 java基础:TreeSet
实现 Comparable 接口@Override// 先按分数排序,分数相同按姓名排序= 0?@Override// 同分数,按姓名排序// 输出: [Alice(85), Charlie(85), Bob(92)]使用 Comparator@Override// 按部门排序,同部门按薪资降序// 输出:TreeSet 是一个功能强大的有序集合实现,基于红黑树数据结构提供了高效的排序和导航操作。
2025-11-08 12:59:53
441
原创 java基础:HashMap
使用对象作为HashMap键的主要作用:表达复杂关系:多个属性共同确定唯一性提高代码可读性:使用有意义的对象而不是拼接字符串类型安全:编译时类型检查封装性:可以封装复杂的相等性逻辑灵活性:可以轻松扩展键的属性这种模式在现实世界的应用中非常常见,特别是在需要基于多个条件进行快速查找的场景。
2025-11-08 12:59:14
914
原创 java基础:HashSet
/ 必须重写equals和hashCode方法@Override@Override@Override// 使用自定义对象// 重复,不会被添加// 2使用HashSet的最佳时机:✅ 需要快速检查元素是否存在✅ 需要自动去重✅ 不关心元素顺序✅ 元素数量较大,需要O(1)的查找性能✅ 经常进行集合运算(交集、并集、差集)不适合使用HashSet的场景:❌ 需要保持插入顺序(用LinkedHashSet)❌ 需要元素排序(用TreeSet)
2025-11-07 14:53:58
329
原创 Java基础:LinkedList
LinkedList 是一个功能强大的数据结构,特别适合需要频繁插入删除操作的场景。理解其内部实现原理和性能特性,能够帮助我们在合适的场景选择合适的数据结构,写出更高效的程序。
2025-11-07 11:48:10
833
原创 java基础: ArrayList详解
ArrayList 是 Java 中最常用的集合类之一,它的主要优势在于:随机访问性能优秀尾部添加效率高内存连续,缓存友好需要注意的局限性:中间插入/删除效率较低扩容有性能开销非线程安全在实际开发中,应根据具体需求选择合适的初始容量,并注意在多线程环境下的同步问题。
2025-11-06 15:19:27
362
原创 java基础:集合篇
需要:ConcurrentHashMap、CopyOnWriteArrayList。ConcurrentSkipListMap:线程安全的有序 Map。ConcurrentSkipListSet:线程安全的有序 Set。CopyOnWriteArrayList:线程安全的 List。CopyOnWriteArraySet:线程安全的 Set。ConcurrentHashMap:线程安全的 Map。:线程安全的动态数组(已过时):线程安全的 Map(已过时):线程安全的 HashMap。
2025-11-06 14:51:57
501
原创 全栈预热篇:重温java
你不需要再深入学习SSM:除非维护老旧项目,否则新项目一律使用Spring Boot。理解Spring Boot的“父辈”:当你在学习Spring Boot时,知道它的Web能力来自Spring MVC,ORM能力可以集成MyBatis或Hibernate,这能让你更深刻地理解它。感受到技术的进步:你会珍惜Spring Boot带来的便利,并明白为什么你现在的学习路径是,这是一种历史的必然选择。SSH/SSM 时代:你需要自己动手组装发动机、调试变速箱、焊接车架……最后才能得到一辆能开的车。
2025-10-30 19:49:03
632
原创 从“搭项目”到“扛项目”:你真正需要掌握的Node.js深度
是完全不同的两个概念,市场稀缺的不是“工匠”,而是能。会用Node.js”和“能用Node.js支撑起一个。
2025-10-23 15:04:08
189
原创 《sql学习指南》笔记1-10章
商业化的关系型数据库已经有30多年的历史了。Oracle公司的Oracle Database;Microsoft公司的SQL Server;IBM公司的DB2 Universal Database。这些数据库服务器的功能都差不多,尽管其中有些长于处理海量或超大吞吐量的数据库,而有些更适合处理对象、大文件或XML文档等。所有这些服务器都很好地遵从了最新的ANSI SQL标准。这是一件好事,本书将展示如何编写无须进行任何修改(或仅需要极少量的修改)就能够在这些平台上运行的SQL语句。
2023-05-11 12:10:37
6080
1
原创 js原型+jquery实现页码过多时显示省略号的分页器组件
如果当前页为4,根据前面的省略号的排列方式,首页页码1,省略号,后面的页码3,当前页4,那么省略号只替换了一个页码(2),不符合它替换两个以上的页码的条件,我们前面已经说过,省略号必须替换2个以上的页码,这样它的出现才有意义。省略号一定是省略了2个以上的页码,也就是说只有当首页与current-1之间的页码>=2的时候才显示为省略号,否则直接显示页码,不显示省略号。根据后面的省略号的排列方式以及省略号必须代替2个页码以上的规则,我们可以得出后面的省略号出现的条件是。执行pagenation实例。
2023-03-23 23:20:16
1079
空空如也
antd select组件的blur()和focus()方法怎么使用
2022-09-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅