高校固定资产管理系统开发实战:SpringBoot+Vue+MySQL全解析

高校固定资产管理系统,这活儿听起来挺传统的,但真做起来你会发现里面门道不少。我前前后后给两所不同规模的学校搞过类似的系统,从最初单纯记录资产编号,到后来接入扫码盘点、维修报废审批流,算是把这类业务系统的底细摸了个遍。如果你手里也有一套基于SpringBoot后端+Vue前端+MySQL的固定资产管理源码,或者正打算自己从零写一个,这篇分享希望能帮你少踩几个坑。这套组合现在基本是Java Web开发的标准答案,代码结构清晰、前后端分离、数据库关系型存储,拿来跑高校资产这类事务性强的业务再合适不过。

1. 项目概述与核心需求拆解

1.1 高校资产管理到底在管什么

很多第一次接这类项目的开发者会低估它的业务复杂度。高校的固定资产不仅仅是电脑桌椅,还包括实验仪器、图书文献、后勤设备、在建工程转固等,资产类型五花八门,存放地点分散在各个院系和实验室。过去很多学校靠Excel表格管理,每年盘点的时候专职管理员对着几千行数据头大,账实不符的情况很常见。

一套系统能跑起来的前提,是你得先把这个业务语境想明白。表面上是增删改查,实际上是:谁在用这件资产、从哪个采购单来、现在在哪个房间、价值多少、要不要折旧、坏了走什么流程维修、最后怎么报废或调拨。这就是资产的全生命周期管理。做系统设计时,如果一开始就按“资产台账”的思路去建表,后续一定会返工,因为台账只覆盖了一个静态节点。

所以我建议你拿到这套源码后,先别急着跑起来看效果,把它的表结构和实体类捋一遍,看它有没有覆盖采购入库、领用、变更、维修、处置这几个关键环节。如果只有一张大宽表,那这套系统做不长。

1.2 源码适合谁用、能解决什么问题

这套源码的主要定位非常明确:给高校资产处或后勤管理人员提供一套线上管理工具,同时给在校计算机相关专业的学生或刚工作的开发人员提供一份可运行、可二次开发的学习范本。

如果你是管理员角色,它能帮你把日常的资产登记、领用审批、部门调拨这些流程从线下挪到线上,每一条操作都有日志,盘点时拿着导出的数据去现场核对,效率翻倍。如果你是学习者,这套源码的价值在于它演示了最标准的“管理信息系统”长什么样:有用户登录和权限拦截、有一对多和多对多的表关联、有事务控制、有前端组件化的页面组织方式、有接口文档的规范写法——这些都是你在毕业后实际工作中马上要用到的技能。

注意:这套系统定位是管理端,一般不涉及学生端或移动扫码,如果需要给辅导员配移动端,通常要在源码基础上加小程序或App接口。按我的经验,第一版先保证管理端流程闭环,比急着开移动端更靠谱。

2. 技术选型与整体架构分析

2.1 为什么是SpringBoot + Vue + MySQL

这套组合被称作“Java国民级前后端分离架构”,不是没道理的。SpringBoot负责把后端的各种配置简化到极致,以前Spring写个配置文件能写一屏,现在一个启动类全搞定;Vue按组件组织页面,复用性好,和ElementUI搭在一起做后台管理界面属于“官方推荐搭配”;MySQL稳定可靠、社区资源多,用在固定资产这类低频写入、高频查询的场景下没有任何性能压力。

挑这套技术栈还有一个隐藏原因——找资料方便。不管是前端组件闪烁、后端事务回滚失效,还是数据库乱码问题,你随便一搜都能搜到解决方案。相比冷门框架,这套方案踩坑成本低很多。如果换成Node.js后端加MongoDB,虽然写起来快,但高校信息中心一般不希望用太离经叛道的栈,后续维护换人也麻烦。

2.2 前后端分离的核心机制

这套系统运行时的交互流程是:浏览器加载Vue构建的静态页面,用户在页面上点击操作,Vue通过Axios发异步请求到SpringBoot提供的RESTful接口,SpringBoot通过MyBatis或JPA操作MySQL,数据查询完毕后逐层返回给前端,前端再响应式地更新DOM。

这个过程中有个容易忽略的点——Token鉴权。登录成功后后端会生成一个token(通常用JWT实现),前端把它存在浏览器里,之后的每个请求都携带它。后端通过拦截器校验token,如果失效或者伪造就直接返回401。这个机制保证了一个用户只能操作他权限范围内的数据。你在看源码时,可以重点找三个地方:登录接口、拦截器配置、路由守卫,这三者构成了前后端分离应用的安检门。

3. 数据库设计:固定资产管理的“地基”

3.1 核心表结构与设计思路

一套合格的高校固定资产系统,至少需要以下核心表:用户表、角色表、菜单权限表、资产分类表、资产信息表、领用记录表、维修记录表、报废申请表、部门表、仓库/存放地点表。下面这张表格展示的是我做过的一个项目中资产相关表的精简对照,你可以拿来和手头的源码做比对:

表名核心字段业务作用
t_asset_type分类编码、父级ID、名称实现资产多级分类,比如“仪器设备-分析仪器-光谱仪”
t_asset资产编号、分类ID、存放地点ID、负责人、购入日期、原值、状态记录资产静态信息,状态位驱动流转
t_asset_use资产ID、使用者ID、使用部门ID、领用时间、归还时间追踪谁在用、用了多久
t_asset_repair资产ID、报修人、故障描述、维修费用、完成时间记录维修过程与成本
t_asset_scrap资产ID、申请原因、审批状态、处置方式报废审批流程的数据支撑

这里最需要花心思的是状态字段的设计。我刚入行那会用单个状态字段存储:1正常、2维修中、3已报废。后来发现一个问题——资产从“正常”到“维修中”再到“正常”的过程,如果只用状态位记录,别人根本不知道它中间修过几次,没法统计维修成本。

更好的做法是状态字段只管当前状态,同时配一张操作流水表,每一次状态变更都插入一条记录。这样你既能知道资产此刻在哪,也能追溯它之前经历过什么。我在第二个版本中就是加了流水表,月底统计各院系维修费用时,一条SQL直接按资产分组查出所有维修记录,非常省事。

3.2 建表时容易踩的两个坑

第一个坑是金额字段类型。固定资产涉及原值、残值、维修费用,如果图省事用float或double存,时间长了累计数据会有精度偏差,做资产报表时加起来差几毛几分,对账对到怀疑人生。正确做法是用decimal(10,2)这类定点数,专门为了精确小数设计的。

第二个坑是关联字段的索引。资产表大概率会按分类、部门、状态做筛选,如果你没在建表时给这些外键字段加普通索引,数据量到了五六万条之后,前端下拉筛选会明显变慢。我自己实测过,一张5万条数据的资产表,不加索引的模糊状态查询耗时大约1.8秒,加了复合索引之后降到0.08秒,体验差距是数量级的。

4. 后端核心模块的实现逻辑

4.1 RBAC权限模型的落地

高校里的用户角色几句话说不清。资产处的人要能管理全资产,院系资产管理员只能看到自己院系的资产,普通老师只能申请领用,系统管理员则是后台唯一能管账号的角色。如果把这些关系硬编码写在代码里,后续任何一个角色需求变化都得改代码重新发版,不现实。

这套源码一般会采用RBAC模型,也就是用户-角色-菜单/权限三层模型。用户表不含任何权限信息,只保存user_id和role_id的关联;角色表定义这个角色能看哪些菜单、能操作哪些按钮;后端接口再用拦截器判断当前用户是否具备某个权限码。这样做的好处是新增一个“学院资产代办员”时,管理员只需要在页面里配置新角色并勾选权限,根本不用动源码。

我在代码评审时见过不少新手把权限直接在Controller方法里写if判断,用户角色改一下,代码就要跟着补分支。而RBAC做出来之后,权限变化对代码零侵入,维护成本很低。建议你在二次开发时,优先理解这个模型,不要绕过它。

4.2 资产领用与报废的流程控制

资产管理的核心是流程。一次资产领用,前端提交申请后,后端要做的事包括:校验资产当前状态是不是空闲、校验申请人部门是否有权限领用这类资产、写入领用记录、更新资产状态为在用,这几个操作必须是在同一个数据库事务里完成的。

为什么强调事务?因为如果前两步成功但最后一步失败,数据库里就会出现“申请已批准但资产状态还是空闲”的脏数据,管理员在列表里甚至查不到这件资产被谁领走了。SpringBoot里在Service方法上加@Transactional注解就能保证要么全部成功、要么全部回滚。不过这里有个细节:如果事务方法内调用了同类里的另一个方法,注解不会生效,因为Spring代理机制拦不到内部自调用。我建议把事务边界放在最外层Service接口方法上,内部互相调用就用注入自身Bean的方式,或者拆开Service。

报废流程更复杂一点,通常要经过资产管理员申请、部门负责人审批、资产处复核三个环节。每一层审批对应一个状态节点,后端用状态机模式处理会比较优雅。你不用引入太多设计模式,只需要在代码里维护好状态流转的合法路径映射——比如只有“已申请”状态能走到“待部门审批”,乱传状态直接抛业务异常。

4.3 报表与跨部门统计的关键SQL思路

高校管理者真正关心的东西,往往不是单独的资产,而是各类统计数字:全校设备总值、各院系资产分布、年度新增数量、维修费用排行等。这类模块在后端实现的核心就是分组聚合SQL加时间范围筛选。

最常用的一条SQL思路是:按部门分类分组,统计资产数量与资产总值,再按需要过滤年份范围。如果你在源码里看到这类统计接口返回的是DTO对象而非实体类,说明作者考虑了查询效率,没有把关联表全查回来在内存里过滤。避免N+1查询问题——也就是资产列表每条记录都单独查一次分类表名称,这样数据量上去之后接口响应会爆炸,接口调用次数和数据量成正比。一条关联查完并把结果映射到视图对象里,是这一模块的最佳实践。

5. 前端页面组织与交互关键点

5.1 后台管理页面的组件化思路

Vue前端不是堆几个div就行,组件化做得好不好直接影响扩展性。拿资产列表页来举例,合理的拆分方式是把搜索栏做成一个组件,表格做成一个组件,分页器单独一个组件,弹窗表单单独一个组件,这样既方便复用,也让每个单文件的逻辑保持干净。

提到ElementUI,表格组件自带多选、排序、列显隐,能省掉大量原生表格操作代码。但要注意,ElementUI的版本差异挺大,如果你拿到的源码用的是Vue 2配ElementUI 2.x,升级成Vue 3后需要改成Element Plus,接口用法有变化,光迁移表格事件就要花不少时间。

搜索栏里的“资产状态”和“所属部门”建议用下拉框而非自由输入。因为自由输入容易造成同一个部门被写成“信息学院”和“信息工程学院”两种,统计时就成两条记录了,这是录入规范问题,前端多写一个下拉框就能避免。

5.2 路由守卫与页面权限拦截

做过前后端分离的人都知道,不能只靠后端拦截就完事。前端路由也要做一道拦截,原因是:用户不可能把几十个接口挨个记住然后模拟请求,但不懂技术的用户可能直接在地址栏改URL跳到自己没权限的页面上,前面一片白屏,体验极差。

在Vue项目的路由配置文件里,给需要鉴权的路由加meta字段,比如meta: { roles: ['asset_admin'] },然后在全局前置守卫里统一检查。如果用户token不存在就跳转登录页,如果存在但角色不匹配就跳转403页面。这就是前端路由守卫。不过要提醒你:前端守卫只是优化体验用的,真正拦住非法访问还是得靠后端拦截器,前端某个人通过控制台改token角色信息也只是白费力气,后端接口校验不过照样返回无权限。

5.3 让资产批量操作不再“卡顿”

资产管理里有个高频操作——批量导入和批量调拨。如果每次勾选几百条数据后,前端一条条循环发POST请求,后端就要接收几百个请求,不仅慢,还可能把数据库连接池打满。正确做法是前端把选中的ID数组一次打包传过来,后端一个接口接收list集合,再在Service层用批量SQL处理。

MyBatis支持foreach标签拼批量SQL,但要注意批次大小,一次1000条左右比较稳妥,拼太多SQL会超过数据库max_allowed_packet上限,导致执行报错。我在某次模拟大范围调拨时踩过这个坑,两百条数据没问题,一次三千条就报PacketTooBigException,查了半小时才定位到是MySQL配置的限制。做批量功能时,给前端提示“单次操作不超过2000条”也是一种办法。

6. 部署环境准备与运行配置

6.1 本地快速跑通这套源码的完整步骤

拿到源码,第一步不是看代码,而是把运行环境准备好。这套系统要跑起来,你本机需要以下工具:JDK 8或11、Maven 3.6以上、Node.js 14以上、MySQL 5.7或8.0,以及一个趁手的IDE(我用的是IntelliJ IDEA,社区版够用)。

具体启动流程大致是:

  1. 在MySQL里创建一个空数据库,建议字符集设为utf8mb4,否则存不了生僻字符和emoji。命令行或Navicat里执行创建语句都行。
  2. 把源码目录下提供的sql脚本执行一遍。注意脚本里的建库语句可能指定了库名,如果和你建的库名不一致就改一下脚本头部再执行,我个人习惯改成统一库名。
  3. 打开后端项目,修改application.yml里的数据库用户名密码,确认端口没被占用(默认8080或8081)。然后运行启动类,看到Spring Boot的Banner日志和“Started Application in x.xxx seconds”就代表后端起来了。
  4. 用命令行或IDE终端进入前端目录,执行npm install安装依赖。国内网络环境建议先设置npm淘宝镜像,不然安装速度能让你怀疑人生。
  5. 依赖装完后npm run serve启动开发服务器,默认端口通常是8080或5173(取决于Vue版本)。浏览器打开页面,用源码里提供的初始账号登录即可。

如果你在启动时遇到端口冲突问题,改后端配置的server.port或前端vite.config.js里的proxy端口就行,前后端接口通过代理联调时,前端配置里的target地址必须和后端实际端口保持一致。

6.2 数据库连接池与线上参数建议

这套系统在本地跑通很简单,但如果你要部署到服务器让学校信息中心使用,配置就不能太随意。下面是几个值得优化的点:

配置项开发环境推荐值生产环境建议理由
spring.datasource.hikari.maximum-pool-size1020-30连接池太小高峰期排队,太大浪费内存
MySQL的max_allowed_packet默认值64M防止批量SQL导入失败
JVM启动内存参数默认-Xms512m -Xmx1024m高校几百人同时在线,1G足够

另外,上线前一定记得改初始密码。很多源码README里会写初始账号admin/123456,如果直接拿到生产环境不修改,那就等于门户大开。我在做验收测试时发现过预置管理员密码没改的案例,这属于非常低级的错误,但发生率出乎意料的高。

7. 常见问题与排查心得

7.1 登录成功但菜单加载不出来

这个问题出现的频率相当高。前端登录后拿到了token,跳转到首页却看不到任何菜单,控制台还有一串403或404报错。排查路径是先清一下浏览器缓存,再直接请求后端菜单接口,看返回的数据格式是不是前端要求的格式。

有次我发现前端要求后端返回的菜单树中每个节点的children字段必须存在,即使为空也必须是数组,而后端查出叶子节点后直接省略了children字段,前端组件里对undefined调forEach就报错了。这类问题一般是联调时前后端字段约定不统一造成的,排查时按“先后端、再网络、再前端”的顺序来,一般十分钟内定位。

7.2 资产列表分页数据不准

分页功能看起来简单,但有一个高频错误:前端传的页码从1开始,后端SQL里的limit偏移量算错了,导致第二页数据重复第一页的最后一两条。这个问题的根源是对pageNum和pageSize的转换理解不一致。后端拿到pageNum=2、pageSize=10时,正确的偏移量是(2-1)10=10,不是210=20。

检查你是否用对了PageHelper也很关键。PageHelper是MyBatis分页插件,如果你在查询前调用PageHelper.startPage(pageNum, pageSize),然后紧跟着执行的查询语句就是被分页的。一个容易出问题的坑是startPage和查询之间插入了其他数据库操作,比如前置查询,会导致分页被应用在错误的SQL上,数据就乱了。

7.3 资产编号唯一性冲突

高校资产编号通常按“分类编码+年份+流水号”拼接,比如SB202401001,但并发录入时容易生成重复编号。解决思路有两种:一种是在数据库层面给asset_code字段加唯一索引,重复时直接报错,后端捕获异常提示重新提交;另一种是生成编号时不依赖数据库自增,而是用Redis的自增计数器或数据库的乐观锁保证并发环境下拿到不同流水号。

我给项目做课程设计时喜欢用第二种方案,因为第一个方案需要人工重试,使用体验不好。不管用哪种,不要把编号生成逻辑放在前端,前端传入的时间戳拼接不可控,并发下很容易撞。

8. 总结心得与扩展方向

这套系统自己跑几遍,改一改,你会对业务系统开发有个整体感知:从表结构设计、事务边界、权限模型到前端组件、联调部署,每一环都串起来了。我个人觉得这类系统的最大价值不是“能跑”,而是它的每一步都符合正规项目的基本套路,这就是一个能让你够得着的范本。

如果你有余力,建议给这个系统加两个功能练手:一是Excel批量导入模板下载与数据校验,二是资产二维码标签打印。前者涉及文件上传与逐行校验,能让你理解数据清洗的重要性;后者相当于一个轻量打印功能,难度适中但非常实用。做完这两个功能,你再去面试Java后端岗,聊到项目经验时就有实质内容撑着了。

另外在代码提交之前,把数据库初始化脚本和README补充好,包括每一步启动说明和常见报错解决方案。很多源码在交接时最缺的就是文档,而这些恰恰是使用者最需要的东西。

相关新闻

Agent异常行为实时检测:Harness Engineering的监控告警实战

Agent异常行为实时检测:Harness Engineering的监控告警实战

最近我带的Agent应用一上生产,最先顶不住的已经不是模型回答得对不对,而是它在后台到底干了什么。一套AI Agent如果没有把Harness Engineering那层监控告警做好,异常行为实时检测基本就是靠人肉盯日志,等发现问题时,钱…

2026/10/21 4:17:43 阅读更多 →
AI Agent监控告警实战:从指标设计到Harness落地

AI Agent监控告警实战:从指标设计到Harness落地

做 AI Agent 的人,我相信大部分都经历过那种“前一秒还好好的,后一秒突然开始胡言乱语”的时刻。尤其是当一个 Agent 被投放到真实业务里、拿到了真实工具权限、开始自主执行多步任务之后,它已经不是在跑一段固定的代码,它是在一个…

2026/10/21 4:17:43 阅读更多 →
技能不是玄学:一套可拆分、可迭代的个人能力管理方法论

技能不是玄学:一套可拆分、可迭代的个人能力管理方法论

“技能”这个词,这几年被讲得太烂了,烂到我一度听到就烦。什么“技能提升”“技能变现”“一技之长”,每个词都像在贩卖焦虑。但认真的讲,回头看这些年我能往前走的一点路,靠的还真就是“技能”这两个字。问题只在于&a…

2026/10/21 4:16:43 阅读更多 →

最新新闻

Windows下PyTorch复现PointNet++点云分类实战

Windows下PyTorch复现PointNet++点云分类实战

1. 为什么要在Windows上折腾PointNet搞点云深度学习的人,绕不开PointNet这个经典网络。它2017年出来之后,几乎成了点云分类和分割任务的基线模型,后续的PointConv、DGCNN、RandLA-Net多多少少都受了它的影响。但真到自己动手复现的时候&#…

2026/10/21 4:58:59 阅读更多 →
别只收藏skills清单:项目式拆解+刻意练习,30天做出作品

别只收藏skills清单:项目式拆解+刻意练习,30天做出作品

1. 先搞清楚一件事:你缺的真是一份“skills清单”吗这个标题其实特别有意思。单独扔过来一个“skills”,乍一看像是职场简历里的那个区块名,又像是一个待办事项列表——今天学Python,明天学剪辑,后天再补个AI绘画。但我…

2026/10/21 4:58:59 阅读更多 →
Windows 10下PyTorch 1.x复现PointNet++点云分类实战

Windows 10下PyTorch 1.x复现PointNet++点云分类实战

1. 点云分类任务的核心价值与复现思路1.1 为什么选择PointNet做点云分类点云分类这件事,放在三维视觉里算是入门级的任务,但真正动手做的人都知道,从数据加载到模型收敛,中间要踩的坑一点都不少。PointNet作为PointNet的升级版&am…

2026/10/21 4:58:59 阅读更多 →
JavaScript时间处理工具类:从时区错位到日期计算的实战指南

JavaScript时间处理工具类:从时区错位到日期计算的实战指南

1. 我先梳理了时间处理的四大痛点场景在动手写任何一行代码之前,我先做了一个动作:把最近几个项目里跟时间打交道的代码全部翻出来,统计了一下到底有多少地方出现过“时间相关bug”。统计结果把我自己都吓了一跳——光一个中等规模的项目里&a…

2026/10/21 4:58:59 阅读更多 →
深度计算 Runtime 并发调度:执行流、事件与异步提交实践

深度计算 Runtime 并发调度:执行流、事件与异步提交实践

1. 并发无上限是个假象:先看清深度计算硬件的真实执行模型1.1 从“线程并发”到“任务并发”的思维转换做深度计算 Runtime 这些年,我见过太多团队在“并发”这件事上栽跟头。最常见的想法是:任务能塞就塞,队列能开多深就开多深&a…

2026/10/21 4:58:59 阅读更多 →
离线环境Dify+Milvus知识库部署:连通性排查与解决全记录

离线环境Dify+Milvus知识库部署:连通性排查与解决全记录

规划内网知识库的时候,最头疼的往往不是算法选型,而是环境本身。最近搭了一套离线环境下的 Dify Milvus 知识库系统,折腾了整整两天,最后发现所有问题都集中在“连不上、起不来、版本对不上”这几个坎上。这里把整个排查过程和解…

2026/10/21 4:57:59 阅读更多 →

日新闻

统一内存+量化:锐龙AI Max PRO 400如何本地跑320B大模型

统一内存+量化:锐龙AI Max PRO 400如何本地跑320B大模型

这段时间硬件圈和AI圈都在传一个事:AMD锐龙AI Max PRO 400系列把最高192GB统一内存搬进了PC形态的产品里,按宣传口径,本地跑320B参数的大家伙不再是纸面概念。我第一反应倒不是“内存真大”,而是这话背后的含金量——它把过去只能…

2026/10/21 0:00:11 阅读更多 →
AI助手深度使用体验:对话质量、长文本处理与指令遵循如何留住用户

AI助手深度使用体验:对话质量、长文本处理与指令遵循如何留住用户

1. 从“封号重开”这个行为说起:用户到底在追求什么“封号重开”这四个字,放在任何产品语境里都带着一股决绝的味道。一个账号从零开始积累使用记录、调教偏好、沉淀工作流,背后是大量的时间和精力成本。正常情况下,没有人愿意主动…

2026/10/21 0:00:11 阅读更多 →
ROS中YOLOv3工程落地:通信同步、坐标变换与性能调优

ROS中YOLOv3工程落地:通信同步、坐标变换与性能调优

1. 为什么在ROS里硬刚YOLOv3不是“炫技”,而是工程落地的必经之路我第一次在某高校机器人实验室看到那台搭载Jetson TX2的移动底盘原地打转、反复识别错垃圾桶时,就意识到:单纯跑通darknet_ros demo和真正让YOLOv3在ROS里“干活”&#xff0c…

2026/10/21 0:00:11 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/20 10:02:13 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/20 20:43:59 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/21 4:27: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/20 10:02:08 阅读更多 →
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/20 9:50:17 阅读更多 →
黑夜航拍船只数据集训练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/20 9:50:45 阅读更多 →