Java Web人力资源毕设实战:Jsp/Servlet+MySQL实现考勤奖惩工资闭环
简介这份PDF面向计算机专业学生与Java Web开发者围绕“基于Java Web的企业人力资源管理系统”这一毕业设计课题完整呈现从选题背景到系统落地的全过程。内容涵盖人力资源管理理论、B/S与C/S架构比较、Jsp/Servlet技术基础以及可行性分析、需求分析、总体设计与数据库设计等关键环节并给出管理员登录、员工信息、培训、招聘、奖惩、薪金、合同、考勤等模块的具体实现思路可作为课程设计、毕设选题与项目练手的参考范本。资源包共1个PDF文件约2.84MB结构按绪论、基础理论、系统分析、总体设计、系统实现等章节组织目录清晰便于按模块查阅与对照学习。目前已有154人学习适合希望理解Java Web项目完整开发流程、需要借鉴系统分析与设计文档写法的读者参考。1. 从一份 Jsp/Servlet 毕设拆起这套 Java Web 人力资源系统到底能跑通什么很多同学拿到《基于Java Web的企业人力资源管理系统的设计与实现》这类毕设 PDF 时第一反应是“又是烂大街的增删改查”。但真正翻到第 5 章实现部分你会发现它把考勤、奖惩、工资三条业务线用员工编号串成了一条闭环这个设计思路比单纯堆 CRUD 页面值钱得多。这套系统基于 B/S 三层结构用 Jsp/Servlet 做核心、MySQL 5.1 做后台、MyEclipse 8.6 做开发平台覆盖员工信息、招聘、培训、奖惩、薪金、合同、考勤七个模块。它适合两类人一是要交 Java Web 毕设、需要一份能跑通全流程参考实现的学生二是刚转 Java Web、想找一个业务闭环完整的小型管理系统练手的初级开发。下面我按“资源是什么 → 怎么用 → 坑在哪”的顺序把这份 PDF 里的设计拆成能直接抄作业的落地笔记。2. 技术选型与架构拆解为什么是 Jsp/Servlet B/S 三层而不是 Spring Boot2.1 B/S 与 C/S 的取舍这套系统为什么必须走浏览器端PDF 第 2.3 节花了整整两页对比 B/S 和 C/S核心结论就一句话人力资源管理的使用对象是管理员办公地点不固定客户端越轻越好。C/S 两层结构把业务逻辑压在客户端每次改一个工资计算公式就得挨个工位更新 exeB/S 三层结构把表示逻辑、业务逻辑、数据逻辑全放在服务器端管理员换台电脑打开浏览器就能用升级只动服务器。具体到这套系统的三层划分是这样的层次职责本系统对应实现表示层接收请求、展示结果JSP 页面 HTML/CSS/JavaScript业务逻辑层处理业务规则、事务Servlet JavaBean数据逻辑层数据持久化、查询MySQL 5.1 JDBC这个划分的直接好处是工资管理里“自动计算个人所得税”这种规则只写在 Servlet 里一处JSP 只负责把结果渲染成表格。改税率不用碰页面改页面不用碰税率。2.2 Jsp/Servlet 的分工边界哪些逻辑放 JSP哪些必须抽到 ServletPDF 第 2.4 节讲 Jsp/Servlet 时提到一个关键点JSP 不增加任何 Servlet 实现不了的功能它的价值在于把静态 HTML 和动态内容分离。落到这套系统里我的建议是——JSP 只做三件事接收表单参数回显、遍历 Servlet 传过来的 List 渲染表格、引入公共头尾。Servlet 做四件事校验登录态、调用 DAO 查库、组装业务数据、转发或重定向到 JSP。数据库连接、事务提交、异常回滚全部封在 DAO 层Servlet 不直接写 JDBC。常见做法是建一个 BaseServlet把doGet和doPost统一转发到execute方法子类只重写execute。这样登录校验、编码设置这些重复代码只写一次。2.3 数据库选型与员工编号关联设计PDF 第 4.4 节明确选了 MySQL 5.1理由是免费、轻量、和 JDBC 配合成熟。真正值得抄的是它的关联设计工资表、考勤表、奖惩表都带emp_id字段通过员工编号把三条业务线串起来。这意味着——算某员工当月工资时先按emp_id查考勤汇总再查奖惩汇总最后合并进工资记录。奖惩管理里涉及金钱的记录统计当月金额后直接插入工资表对应字段。考勤异常迟到、缺勤触发的扣款也走奖惩表再汇入工资。这个设计的边界在于它假设一个员工在同一月份只有一条工资记录、一条考勤汇总记录。如果企业有多次发薪或分段考勤这套模型需要加时间维度字段否则会覆盖。2.4 建库脚本与核心表结构落地PDF 附录二给了 SQL 建库语句但正文里没有完整贴出。按这套系统的业务描述我一般会先建员工主表再建各业务从表外键统一指向emp_id。下面是一段可直接执行的建库骨架-- 员工主表所有业务表的关联中心 CREATE TABLE employee ( emp_id INT PRIMARY KEY AUTO_INCREMENT, emp_name VARCHAR(50) NOT NULL, gender CHAR(2), birth_date DATE, dept_id INT, position VARCHAR(50), hire_date DATE, status TINYINT DEFAULT 1 -- 1在职 0离职 ) ENGINEInnoDB DEFAULT CHARSETutf8; -- 考勤表按员工月份汇总 CREATE TABLE attendance ( att_id INT PRIMARY KEY AUTO_INCREMENT, emp_id INT NOT NULL, att_month CHAR(7), -- 格式 2024-06 late_count INT DEFAULT 0, absent_days INT DEFAULT 0, leave_days INT DEFAULT 0, FOREIGN KEY (emp_id) REFERENCES employee(emp_id) ) ENGINEInnoDB DEFAULT CHARSETutf8; -- 奖惩表金额字段会汇入工资 CREATE TABLE reward_punish ( rp_id INT PRIMARY KEY AUTO_INCREMENT, emp_id INT NOT NULL, rp_type TINYINT, -- 1奖励 2惩罚 rp_amount DECIMAL(10,2), rp_date DATE, rp_reason VARCHAR(200), FOREIGN KEY (emp_id) REFERENCES employee(emp_id) ) ENGINEInnoDB DEFAULT CHARSETutf8; -- 工资表汇总考勤扣款和奖惩金额 CREATE TABLE salary ( sal_id INT PRIMARY KEY AUTO_INCREMENT, emp_id INT NOT NULL, sal_month CHAR(7), base_salary DECIMAL(10,2), att_deduct DECIMAL(10,2) DEFAULT 0, rp_amount DECIMAL(10,2) DEFAULT 0, tax DECIMAL(10,2) DEFAULT 0, real_salary DECIMAL(10,2), FOREIGN KEY (emp_id) REFERENCES employee(emp_id) ) ENGINEInnoDB DEFAULT CHARSETutf8;逻辑说明employee是主表attendance、reward_punish、salary都通过emp_id外键关联。参数上att_month和sal_month用CHAR(7)存YYYY-MM比存日期类型更省事查询时直接字符串匹配。DECIMAL(10,2)保证金额精度别用FLOAT否则个税计算会出现分位误差。status字段做软删除员工离职不物理删行否则历史工资记录的外键会断。3. 七个功能模块的实现路径从登录到工资汇总的代码骨架3.1 登录模块Session 校验与过滤器PDF 第 5.1.1 节只说了“管理员登录的实现”没展开细节。按 Jsp/Servlet 的常规做法登录流程是JSP 表单提交用户名密码 → LoginServlet 查库比对 → 成功则session.setAttribute(admin, admin)→ 重定向到主页面。关键是要加一个登录过滤器防止未登录直接访问内部 JSP。// LoginFilter.java拦截所有内部页面请求 public class LoginFilter implements Filter { public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws IOException, ServletException { HttpServletRequest request (HttpServletRequest) req; HttpServletResponse response (HttpServletResponse) resp; String uri request.getRequestURI(); // 放行登录页、登录接口和静态资源 if (uri.endsWith(login.jsp) || uri.endsWith(LoginServlet) || uri.contains(/css/) || uri.contains(/js/)) { chain.doFilter(req, resp); return; } // 校验 Session 中是否有管理员 Object admin request.getSession().getAttribute(admin); if (admin null) { response.sendRedirect(request.getContextPath() /login.jsp); return; } chain.doFilter(req, resp); } }逻辑说明过滤器在web.xml里配置/*拦截放行名单用 URI 后缀判断。参数上request.getContextPath()保证部署路径变化时重定向地址正确。注意 Session 超时时间要在web.xml里设默认 30 分钟毕设演示够用生产环境按需调。3.2 员工信息管理分页查询与模糊搜索员工信息管理是其他模块的基础。PDF 说“收集录入、编辑、删除、查看”实际落地时最容易被忽略的是分页——员工上百条后一次性SELECT *渲染表格会卡。常见做法是用LIMIT做物理分页// EmployeeDAO.java分页 按姓名模糊查询 public ListEmployee findByPage(String keyword, int page, int size) { ListEmployee list new ArrayList(); String sql SELECT * FROM employee WHERE status1 AND emp_name LIKE ? ORDER BY emp_id DESC LIMIT ?, ?; try (Connection conn DBUtil.getConnection(); PreparedStatement ps conn.prepareStatement(sql)) { ps.setString(1, % (keyword null ? : keyword) %); ps.setInt(2, (page - 1) * size); // 偏移量 ps.setInt(3, size); // 每页条数 ResultSet rs ps.executeQuery(); while (rs.next()) { list.add(mapRow(rs)); } } catch (SQLException e) { e.printStackTrace(); } return list; }逻辑说明page从 1 开始偏移量是(page-1)*size。keyword为空时LIKE %%匹配全部。参数上size建议设 10 或 15太大失去分页意义太小翻页频繁。ORDER BY emp_id DESC让新员工排前面符合管理习惯。注意PreparedStatement的?占位符不能用在LIMIT后面做字符串拼接必须用setInt否则有注入风险。3.3 考勤与奖惩联动员工编号作为关联键这是整套系统最核心的业务逻辑。PDF 第 1.1.2 节明确说“工资表、考勤表、奖惩表都有员工编号字段通过员工编号关联”。落地时的顺序是考勤管理员每天录入考勤系统按月汇总迟到、缺勤、请假次数。奖惩管理员录入奖惩记录涉及金钱的标记金额。工资管理员生成当月工资时按emp_id和月份查考勤汇总和奖惩汇总计算扣款和奖惩金额。// SalaryService.java生成某员工某月工资 public Salary generateSalary(int empId, String month) { Salary sal new Salary(); sal.setEmpId(empId); sal.setSalMonth(month); // 1. 取基本工资 double base salaryDAO.getBaseSalary(empId); sal.setBaseSalary(base); // 2. 考勤扣款迟到一次扣 50缺勤一天扣 200 Attendance att attendanceDAO.getByEmpAndMonth(empId, month); double attDeduct 0; if (att ! null) { attDeduct att.getLateCount() * 50 att.getAbsentDays() * 200; } sal.setAttDeduct(attDeduct); // 3. 奖惩金额奖励为正惩罚为负 double rpAmount rewardPunishDAO.sumByEmpAndMonth(empId, month); sal.setRpAmount(rpAmount); // 4. 个税起征点 5000简化按 3% 算 double taxable base - attDeduct rpAmount - 5000; double tax taxable 0 ? taxable * 0.03 : 0; sal.setTax(tax); // 5. 实发 sal.setRealSalary(base - attDeduct rpAmount - tax); salaryDAO.insert(sal); return sal; }逻辑说明扣款标准迟到 50、缺勤 200和个税起征点5000是参数实际企业不同建议抽到配置文件或常量类。rewardPunishDAO.sumByEmpAndMonth用SUM(rp_amount)聚合奖励存正数、惩罚存负数这样加减逻辑统一。注意生成工资前要判断当月是否已生成避免重复插入——加一个UNIQUE(emp_id, sal_month)约束最省事。3.4 招聘、培训、合同模块的轻量实现这三个模块业务相对独立PDF 里描述也偏简单。招聘管理因为“面向社会所有人可浏览”所以招聘列表页不能放在登录过滤器后面要在过滤器放行名单里单独开一个/recruit/list.jsp。培训管理和合同管理就是标准的增删改查复用员工管理的分页和搜索模板即可。一个容易翻车的地方招聘信息录入后应聘者投递简历如果也要入库需要单独建application表用recruit_id关联招聘岗位。PDF 没提这个表但如果要做完整闭环这是必须补的。4. 避坑与排查这套 Jsp/Servlet 系统最容易翻车的五个点4.1 中文乱码POST 和 GET 要分开处理现象表单提交的中文姓名存进数据库变成???或者页面显示乱码。原因JSP 页面pageEncoding和 Servlet 的request.setCharacterEncoding不一致GET 请求的编码还受 Tomcat 的URIEncoding影响。解决JSP 头部统一写% page contentTypetext/html;charsetUTF-8 pageEncodingUTF-8 %Servlet 里在取参数前加request.setCharacterEncoding(UTF-8)Tomcat 的server.xml里 Connector 加URIEncodingUTF-8。三处都对齐乱码基本绝迹。4.2 数据库连接泄漏Connection 没关导致 Tomcat 卡死现象系统跑一段时间后所有请求都超时重启 Tomcat 才恢复。原因DAO 里Connection、PreparedStatement、ResultSet没有在finally里关闭连接池耗尽。解决用 try-with-resources 语法把资源声明在 try 的括号里JVM 自动关闭。如果项目用的是老版本 JDK就在finally里按ResultSet → PreparedStatement → Connection的顺序逐个关每个关之前判空。4.3 工资重复生成没有唯一约束导致数据翻倍现象工资管理员手抖点了两次“生成工资”同一个月出现两条记录实发金额对不上。原因salary表没有(emp_id, sal_month)唯一约束INSERT不报错。解决建表时加UNIQUE KEY uk_emp_month (emp_id, sal_month)生成前先SELECT COUNT(*)判断已存在则走UPDATE而不是INSERT。4.4 过滤器拦截了静态资源CSS 和 JS 加载失败现象登录后页面样式全丢浏览器控制台报 404。原因LoginFilter拦截/*把/css/style.css和/js/validate.js也拦了未登录态下直接重定向到登录页。解决过滤器里放行.css、.js、.png、.jpg等后缀或者把静态资源统一放到/static/目录下过滤器只拦/admin/路径。4.5 MySQL 5.1 驱动类名写错com.mysql.jdbc.Driver还是com.mysql.cj.jdbc.Driver现象启动报ClassNotFoundException数据库连不上。原因MySQL 5.1 用com.mysql.jdbc.DriverMySQL 8.x 用com.mysql.cj.jdbc.Driver混用就翻车。解决确认WEB-INF/lib下的驱动 jar 版本5.1 的 jar 配com.mysql.jdbc.DriverURL 写jdbc:mysql://localhost:3306/hr_db?useUnicodetruecharacterEncodingutf8。别抄网上 8.x 的配置版本对不上。5. 从 PDF 到可运行项目我的复现习惯与一个验证技巧把这份 PDF 变成能跑的项目我的习惯是分四步走每步都有验证点不跑通不往下走。第一步先建库。把第 2.4 节的建库脚本执行一遍用SHOW TABLES确认四张核心表都在再手动插一条员工数据验证外键约束生效。这一步不跑通后面所有代码都是空中楼阁。第二步搭骨架。在 MyEclipse 里建 Dynamic Web Project把 MySQL 驱动 jar 丢进WEB-INF/lib写一个DBUtil测试类main方法里getConnection()打印连接对象。连接成功再写 DAO失败就查驱动类名、URL、端口、密码这四项。第三步按模块递进。先做登录和过滤器跑通“未登录跳转、登录后放行”再做员工管理验证分页和模糊搜索最后做考勤→奖惩→工资的联动这是整套系统的业务核心也是答辩时最容易被问的地方。第四步验证数据一致性。生成一条工资记录后手动用 SQL 核对-- 核对工资表的实发金额是否等于各项加减结果 SELECT s.emp_id, s.sal_month, s.base_salary, s.att_deduct, s.rp_amount, s.tax, s.real_salary, (s.base_salary - s.att_deduct s.rp_amount - s.tax) AS expected FROM salary s WHERE s.emp_id 1 AND s.sal_month 2024-06;如果real_salary和expected对不上说明 Java 端的计算逻辑和数据库存储之间有精度丢失或顺序错误。这个核对习惯是我从一次答辩前夜发现的金额差 0.01 元开始养成的——当时FLOAT改DECIMAL才解决。从那以后我每次做完金额相关模块都强制走一遍 SQL 核对不信任 Java 端的double运算。还有一个技巧PDF 附录三给了“系统主要实现代码”但页码从 34 到 52说明代码量不小。复现时不要试图一次全抄按模块拆开每个模块跑通再合并。Jsp/Servlet 项目最容易出的问题不是单个功能写不出来而是模块之间的 Session 传递和页面跳转乱套。先保证一条业务线端到端跑通再横向复制到其他模块比七个模块同时开工效率高得多。希望帮到你。本文还有配套的精品资源点击获取

相关新闻

Java基础进阶:数据类型、数组、枚举与面向对象实战

Java基础进阶:数据类型、数组、枚举与面向对象实战

干了十年Java,说实话最怕的不是框架升级,而是新人把基础学了个囫囵吞枣。系列前两篇我们聊了环境配置和基本语法,这一篇直接聊几个“看起来简单、实际上全是坑”的知识点:数据类型、数组、排序、枚举,顺带把面向对象的…

2026/10/5 4:31:33 阅读更多 →
MapReduce清洗+Hive建模:电商消费行为分析实战

MapReduce清洗+Hive建模:电商消费行为分析实战

1. 这不是“跑个SQL就完事”的消费分析,而是用MapReduce打底、Hive建模的真实数据流水线你手上有一份200GB的原始订单日志,字段杂乱、时间格式不统一、用户ID存在空值和乱码、商品类目嵌套在JSON里、支付金额带单位和逗号——这时候,别急着打…

2026/10/5 4:30:33 阅读更多 →
高德车机版9.1.87美化包:从签名机制到安装避坑全指南

高德车机版9.1.87美化包:从签名机制到安装避坑全指南

1. 车机导航的美化之路:为什么大家都在改高德说实话,第一次看到"高德地图车机版9.1.87美化包"这个关键词的时候,我脑子里第一反应是——老车机用户们终于憋不住了。原厂车机自带的导航版本常年不更新,界面停在五六年前的…

2026/10/5 4:30:33 阅读更多 →

最新新闻

cracer纪念版红队工具包:开箱即用的域渗透与横向移动补给站

cracer纪念版红队工具包:开箱即用的域渗透与横向移动补给站

简介:cracer纪念版渗透测试工具包是一套面向网络安全初学者与渗透测试实践者的集成化工具集合,聚焦Web漏洞探测、内网渗透、密码爆破及信息收集等核心攻防场景,助力用户快速搭建本地靶场环境并开展实战演练。资源为549.31MB的ZIP压缩包&#…

2026/10/5 5:02:44 阅读更多 →
Ripple Community Wallet连接Ledger硬件钱包:WebHID签名流程与防盲签安全机制详解

Ripple Community Wallet连接Ledger硬件钱包:WebHID签名流程与防盲签安全机制详解

Ripple Community Wallet连接Ledger硬件钱包:WebHID签名流程与防盲签安全机制详解 【免费下载链接】XRP-community-wallet Fully decentralized and the most secure XRP & EVM wallet - built by the community, for the community. 项目地址: https://gitco…

2026/10/5 5:02:44 阅读更多 →
2026大模型实操地图:从指令遵循到Agent部署的工程化指南

2026大模型实操地图:从指令遵循到Agent部署的工程化指南

1. 这不是一份“榜单”,而是一张2026年大模型生态的实操地图你点开这个标题,大概率不是想看又一份“XX大模型排名Top10”的媒体通稿。我干这行十年,从早期TensorFlow 1.x时代手写op,到如今每天和千卡集群、推理引擎、Agent编排打交…

2026/10/5 5:02:44 阅读更多 →
2026年AI辅助论文初稿实操流程与避坑指南

2026年AI辅助论文初稿实操流程与避坑指南

2026年了,关于“论文初稿能不能用AI”这件事,我觉得已经没什么可争论的了——答案显然是能,而且身边不少人在用。真正值得聊的问题变成了:为什么同样用AI辅助,有人三周写出初稿,导师还夸思路清楚&#xff1…

2026/10/5 5:02:44 阅读更多 →
SDD规范驱动的AI开发:Harness如何实现可控化代码生成

SDD规范驱动的AI开发:Harness如何实现可控化代码生成

1. 这不是又一个“AI写代码”噱头:SDD规范驱动 Harness工程化,到底在解决什么真问题?最近两周,我连续被三个不同行业的技术负责人拉进会议室,问的都是同一个问题:“你们团队用的DeepSeek Harness&#xff…

2026/10/5 5:02:44 阅读更多 →
WorkBuddy实战:智能家居竞品调研从三天压缩到三小时

WorkBuddy实战:智能家居竞品调研从三天压缩到三小时

前两天临时接到一个任务,要在三天内给领导交一份智能家居行业的竞品调研报告。换作以前,这种活意味着我要在十几个网站之间来回切换,翻官网、查财报、扒第三方数据,光收集资料就能耗掉一整天,更不用说整理成结构清晰的…

2026/10/5 5:01:44 阅读更多 →

日新闻

马斯克杀回智能体战场,Grok 4.5万亿参数撑腰,Cursor接手数字白领项目:用TaoToken统一Key跑通多模型Agent工作流

马斯克杀回智能体战场,Grok 4.5万亿参数撑腰,Cursor接手数字白领项目:用TaoToken统一Key跑通多模型Agent工作流

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/5 0:00:22 阅读更多 →
AI编程工具插件机制详解:plugin.json配置与加载失败排查指南

AI编程工具插件机制详解:plugin.json配置与加载失败排查指南

1. 从“plugins”这个词说起:它到底在解决什么问题如果你最近在折腾 AI 编程工具,尤其是 Cursor、Codex CLI、Claude Code 这类带 CLI 的编辑器或命令行助手,那你大概率绕不开一个词——plugins。这个词本身不新鲜,从浏览器到 IDE…

2026/10/5 0:00:23 阅读更多 →
第26课:OpenClaw|日志审计与问题诊断:把日志链路改到 TaoToken 的排查清单

第26课:OpenClaw|日志审计与问题诊断:把日志链路改到 TaoToken 的排查清单

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/5 0:00:23 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/5 1:10:22 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/5 3:06:17 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 11:40:45 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 9:43:54 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 20:14:29 阅读更多 →