Ajax Zhan's Blog
Welcome!This is Ajaxzhan.
坚信:品味优先于执行,价值驱动下创造、系统工程保安全
持续跟进AI前沿研究,持续思考技术、产品与思维。
坚信:品味优先于执行,价值驱动下创造、系统工程保安全
持续跟进AI前沿研究,持续思考技术、产品与思维。
本文记录了基于Docker的SpringBoot+Vue3项目部署全流程。首先在Ubuntu22服务器安装Docker及Docker Compose(国内环境采用apt安装解决网络问题);接着配置SpringBoot后端Dockerfile(基于openjdk:8-jdk-alpine)并打包Jar包,同时使用Vite构建前端项目并配置Nginx代理;通过docker-compose.yml编排MySQL5.7、Redis、Nginx及Java应用容器,实现数据卷挂载与端口映射;部署后重点解决常见问题:Maven打包需配置spring-boot-maven-plugin避免主类缺失,MySQL密码重置需修改my.cnf跳过权限校验,以及数据源问题需检查yml配置并注释多余依赖。最终通过`docker compose up -d`一键启动,实现前后端分离项目的容器化部署。
本文记录了作者对“学习金字塔模型”的学习感悟,该模型将学习分为六个阶段:不求甚解(概念理解)、找寻主干(原理拆解)、达成最小目标(demo实证)、构建知识树(全局整合)、迭代计划(问题驱动)、关键点突破(内化与顿悟)。文章强调实践是养成思考习惯的核心,迭代优于增量堆砌,需通过demo验证理论、复盘总结,再以问题驱动知识树演进。作者作为大二学生,正以此模型构建思维体系,平衡写作、管理等能力,探索IT行业成长路径,力求通过渐修实现顿悟。
Jordan Peterson在成熟主题讲座中,以“带时钟的鳄鱼”隐喻时间的无情侵蚀,警示人们若不主动面对局限,便会被动承受随年龄增长而累积的“惩罚”。他强调“学徒心态”的重要性:年轻时需经历狭窄却兼具约束与成长价值的训练期,方能解锁新的可能性。荣格的观点被引用为成熟的关键——在“学徒”阶段后,需重新连接被遗忘的本真自我。讲座还反思现代文化(如大学)可能让人延迟成熟,以虚假身份换取即时安逸,却剥夺了未来真正的成长空间。成熟,实则是与时间博弈、主动承担局限并重建自我的过程。
本文记录了伯克利CS61B课程Lab7中基于二叉搜索树(BST)的Map实现。BSTMap继承Map61B接口,通过内部BSTNode维护key、value及size属性,核心采用递归设计。实现要点包括:put操作时递归插入并更新节点size;size直接返回节点size属性,避免重复计算;删除操作分类处理(无子节点直接删除、单子节点替换、双子节点用右子树最小节点替换),需辅助函数removeMin和min;keySet通过先序遍历生成HashSet;iterator直接返回keySet迭代器。整体通过递归和size维护实现高效操作,体现了BST的经典应用。
本文针对前后端分离GPU预约系统多组件(Redis、MySQL、Java、Nginx)部署复杂、版本冲突问题,引入Docker简化部署。内容涵盖Docker安装配置及镜像加速,详细解析docker run命令参数与镜像、容器关系,介绍镜像/容器常用操作、数据卷挂载实现数据持久化,通过Dockerfile构建自定义镜像,讲解容器网络互连与Docker Compose多容器编排,并以实际项目部署案例演示一键部署流程,为复杂应用的高效部署提供实用指导。
**Reserve System是一个全栈开发的GPU显卡预约系统,采用前后端分离架构。前端基于Vue3+Element Plus实现,后端使用Spring Boot+MySQL+Redis,Python程序负责GPU状态监控。项目包含GPU管理、预约系统、工单审批、用户管理等功能,支持RBAC权限模型。部署灵活,支持本地运行、独立部署和Docker容器化部署。作者负责全栈开发,目前仅供实验室内部使用,计划后续完善后开源。当前V1.0版本已实现基本功能,作者正规划V2.0重构计划以提升系统成熟度。**
本文为数据结构与算法实验课中VS Code C++ Debug配置的回顾教程。作者因久未使用VS Code进行C++开发(平时多用命令行),需通过本次实验重新掌握配置流程。主要步骤包括:下载VS Code及MinGW编译器(选择x86_64-win32-seh版本),配置MinGW的bin目录到系统环境变量,安装Chinese和C/C++插件并重启。核心在于配置三个JSON文件(c_cpp_properties.json、launch.json、task.json),需将文件中的MinGW路径替换为本地实际路径。完成配置后即可进行C++程序Debug。文中提及,若觉得麻烦可考虑使用JetBrain Clion(学生认证免费)。
听闻欧丽娟老师关于内心平静的讲座,作者结合自身大学二年级的心绪起伏,探讨了心境不平静的根源——委屈与义愤。核心在于认识个人渺小,无法撼动既存环境,故不必将主导权交予外界,而应专注打磨自我,避免陷入“比幸运”或“比不幸”的比较泥潭,学会知足感恩。引用木心、苏东坡、陶渊明等观点,强调内心安宁需拉长时间维度,接纳不可改变的,改变能改变的。最终,内心平静方能摆脱功利思维,踏实规划生活,呼应尼布尔祈祷文的智慧。
因误用Obsidian加密插件Cryptsidian,作者遭遇文件损坏惨痛经历。7月24日,为加密本地md文件安装该插件,却未注意插件简介“加密后打开文件即损坏”的警告,导致大量文件成乱码。虽尝试关闭插件、利用文件快照恢复部分(仅7天内),但因未备份,CS61B前两周笔记、6-7月日记等文件不可逆丢失。教训深刻:需延长文件快照周期、养成备份习惯、使用插件前务必详读说明,并提醒专注工作避免随意尝试未知功能。
本文介绍了一个基于gin+gorm的简单CRUD实现demo,主要功能为个人信息录入管理。项目采用gin作为轻量级web框架,gorm作为ORM框架,结合MySQL数据库完成开发。实现了完整的RESTful API接口,包括新增(POST)、条件查询(GET/:name)、分页查询(GET)、修改(PUT/:id)和删除(DELETE/:id)功能。代码结构简单,所有逻辑实现在main.go中,使用Postman进行接口测试。通过gorm.Model定义数据模型,AutoMigrate自动迁移数据库表结构,并封装了统一的JSON返回格式。该项目展示了Go语言开发后端服务的简洁性,适合快速入门gin+gorm基础操作。