首页
/
行业洞察
/
正文
INDUSTRY INSIGHT · 深度
Java口腔医院预约挂号系统:从数据库设计到并发控制全解析
📅 2026/10/10 7:24:11
✍️ 爱科研究院
👁 阅读 3,247
口腔医院的预约挂号听起来不算什么新鲜系统但真正动手做过医疗类管理系统的人都知道这块的水比想象中深。预约挂号不只是“选个医生、挑个时间、记一条记录”那么简单背后涉及排班规则、号源状态流转、并发控制、就诊状态跟踪甚至还要考虑爽约、停诊、转诊这些异常场景。我身边不少做毕业设计的同学一开始以为这就是个普通CRUD结果做到数据库设计阶段就开始懵了——号表怎么建排班怎么跟医生关联同一个时间段被两个人同时挂了怎么办这些问题没想清楚代码写得再多也白搭。这篇文章就围绕“基于JAVA的口腔医院预约挂号系统”这个典型题目把它从需求拆解、技术选型、数据库设计、核心业务实现到答辩展示的完整链路讲清楚。不管你是拿来当毕业设计还是单纯想了解医疗预约系统的业务逻辑这篇文章都能给你一套可以直接落地的思路和代码骨架。1. 先拆需求口腔医院预约系统到底要管什么一个项目拿到手第一步不是开IDE写代码而是把需求拆明白。尤其医疗类系统业务规则比普通管理系统复杂得多需求梳理不到位后面返工的成本非常高。1.1 核心角色划分三类用户决定了系统边界预约挂号系统最典型的角色划分就是三种患者、医生、管理员。这个划分不是拍脑袋定的而是从医疗机构的实际管理和业务流程里抽象出来的。患者端的核心诉求是“快速找到合适的医生并约上时间”。具体来说患者要能浏览科室和医生列表查看医生的排班情况选择一个自己方便的时间段提交预约然后能查看自己的预约记录、取消预约。口腔医院还有一个特点——科室分得很细牙体牙髓、牙周、正畸、修复、种植、儿童口腔等等患者往往搞不清楚自己该挂哪个科所以系统里最好加一个简单的就诊指引或科室介绍这个细节做出来答辩的时候会很加分。医生端的核心诉求是“看到我的号源和患者”。医生登录后要能看到自己某一天有哪些排班每个时间段对应哪个患者以及这个患者的基本信息和初诊复诊标记。有的系统还带病历记录功能但作为毕业设计病历模块加不加看时间和精力预约挂号的核心流程不依赖它。管理端的诉求是“管医生、管排班、管号源、管统计”。管理员负责维护医生信息、科室信息更重要的是生成排班——也就是决定哪个医生在哪个星期的哪一天坐诊放多少个号每个号对应哪个时间段。此外还要能处理停诊、查看预约统计报表等。1.2 业务规则梳理这些隐藏需求才是设计的重头戏角色划分是骨架业务规则是血肉。预约系统的难度恰恰不在增删改查而在这些不起眼但必须处理的规则上。先说排班规则。一个口腔医生不可能每天都坐诊所以系统要支持按周排班——比如张医生每周一、周三上午坐诊每个上午放10个号每个号段20分钟。排班生成后系统要根据排班自动生成当天的号源列表。注意这里涉及时间片和号源两个概念排班是模板号源是实例很多同学直接建一张表把两者混在一起做结果停诊改班的时候痛苦不堪。再说预约状态流转。一个号源的状态至少要经历可预约 → 已预约 → 已完成 / 已取消 / 已爽约。状态流转的触发条件必须清晰患者取消预约号源要释放回可预约池医生停诊系统要通知已预约患者并自动释放号源就诊时间过了患者没来号源标记为爽约。还有并发控制。这个问题答辩时几乎必被问到。同一个医生的同一个时间段两个患者同时在系统里点击预约怎么保证只有一个能成功解决办法不外乎数据库锁、乐观锁、或者借助数据库唯一索引这其实考验的是你对并发场景的理解深度后面我会详细说。1.3 功能模块划分一张功能图管住整个项目功能划分建议按角色拆成三个端再抽出一个公共模块患者端注册登录、科室医生浏览、预约挂号、我的预约查询/取消 医生端查看排班、查看预约患者列表、标记就诊完成 管理端医生管理、科室管理、排班管理、号源管理、停诊处理、预约统计 公共模块登录认证、权限拦截、个人信息管理这套划分正好对应了MVC架构里Controller层的组织方式——按角色建package或者按模块建package都行但建议按角色先分外层目录再在角色内部按功能分子模块结构清晰了后期写代码和写论文都省事很多。2. 技术选型解析JAVA生态下最实用的搭配方案标题里写了“基于JAVA”但JAVA生态太庞大了具体用哪套技术栈直接决定了项目的复杂度和你写代码的顺利程度。我根据做这类项目的常见经验和你可能要面对的答辩难度给出几套方案对比。2.1 技术栈对比SSM还是Spring Boot现在做Java Web毕业设计主流就是两种组合传统的SSMSpring SpringMVC MyBatis和Spring Boot MyBatis或MyBatis-Plus。对新手来说我更推荐Spring Boot理由很直接Spring Boot内置Tomcat不用单独配置容器自动配置省掉大量XML配置起步快社区资料多报错一搜基本都有现成答案。不少指导老师一听到SSM就觉得传统稳妥但Spring Boot本质上还是Spring底层原理一样答辩时问到底层你一样能答。况且Spring Boot是目前企业用的主流用了它反而显得技术方向不落后。如果你的指导老师执意要求SSM那也不要慌两者的核心业务代码几乎可以平移只是配置方式和启动方式有差异。前端方面这个项目不需要做得很花哨。用JSP Bootstrap jQuery是很多人的选择胜在简单直接不需要前后端分离。如果想加一点现代感也可以用Vue Element UI做后台管理页面但前后端分离意味着你要处理跨域问题要做接口文档开发量会上一个台阶。作为毕业设计我建议用JSPBootstrap保底如果页面实在想做得好看一点局部引入Vue也是可以的。2.2 数据库选型MySQL为什么够用数据存储用MySQL足够原因有三一是预约系统的数据量级完全在MySQL的舒适区内二是MySQL Navicat的组合调试方便三是答辩时最常见的几个问题——索引优化、事务隔离级别、SQL查询性能——都在MySQL语境下讨论最方便。ORM框架强烈建议用MyBatis-Plus。它的逆向工程能自动生成entity、mapper、service的样板代码省下的时间你可以用来啃业务逻辑。尤其是BaseMapper里内置的selectById、selectPage这些方法写分页查询的时候能省很多事。但注意用MyBatis-Plus不代表你不用学MyBatis面试和答辩都可能问“MyBatis的#{}和${}有什么区别”“动态SQL怎么实现”这类基础问题。2.3 开发环境与部署方案开发环境我建议统一用JDK 1.8 Maven 3.6 IDEA社区版或旗舰版都行 Navicat TomcatSpring Boot内嵌则不需要单独装。JDK不要用太高版本JDK 8到JDK 11之间都稳妥我见过用JDK 17跑老版本Spring Boot项目出现奇怪报错的案例能避免踩坑就避免。部署方式毕业设计一般要求给一个演示环境。最省心的方案是一台本地电脑跑MySQL代码里配置本机数据库连接打完包直接用java -jar运行。如果需要部署到服务器演示那就在服务器上装MySQL开放3306端口修改application.yml里的数据库地址即可。不建议在教学阶段就折腾Docker除非你有余力并且答辩老师吃这套。3. 数据库设计预约系统的地基全靠这几张表撑起来数据库设计是最能体现一个开发者是否科班出身的环节。预约挂号系统的核心表我按角色和业务域来拆解。3.1 核心表结构设计逐表拆解用户表user主键、用户名、密码加密存储、真实姓名、电话、身份证号、角色类型患者/医生/管理员、创建时间。注意角色字段用tinyint存0/1/2就可以不要用字符串往死里怼。医生表doctor主键、所属科室ID外键关联科室表、医生姓名、职称主治/副主任/主任、简介、头像路径、状态。这里有个细节——医生用户和医生表是两个概念用户表管登录账号医生表管业务信息两者通过user_id关联。很多同学把业务字段直接塞到用户表里后面统计查询会越来越别扭。科室表department主键、科室名称、科室位置、科室简介、排序号。口腔医院的科室值得认真建一下牙体牙髓科、牙周科、口腔正畸科、口腔修复科、儿童口腔科、口腔颌面外科这些作为初始数据直接写进SQL脚本演示的时候一眼看去就很专业。排班表schedule这个是全系统的核心表之一。字段包括主键、医生ID、排班日期、班次类型上午/下午、开始时间、结束时间、放号数量、已约数量、状态。这张表里的一个记录对应的是一次坐诊时段而不是具体某一个时间点。号源表appointment_slot主键、排班ID外键、号源时间、号源序号、状态可约/锁定/已约/停诊。排班是一个容器号源才是真正被患者预约的那个对象。生成排班时系统按放号数量循环插入号源记录。预约记录表appointment_record主键、患者ID、号源ID、排班ID、医生ID、科室ID、预约时间、就诊状态预约成功/已完成/已取消/已爽约、挂号费用、取消时间。这张表本质上是业务流水表除了记录关系还要承载统计功能所以冗余存储了医生ID和科室ID——这就是典型的水表设计思路查统计时不回表关联直接从这个冗余字段取数。3.2 表关系梳理与设计要点这几张表的关系我用文字梳理一下科室一对多医生医生一对多排班排班一对多号源号源一对一预约记录。也就是说患者预约的时候实际上是预约记录关联到某一个具体的号源ID上。设计要点有三个。第一排班和号源分离是我强烈推荐的因为停诊处理的逻辑会简单很多——停诊时只需把排班状态改成停诊把未预约的号源状态改成停诊已预约的则走取消并通知流程。如果排班和号源混在一张表里改一个停诊要连带更新一大堆记录容易出错。第二状态字段要大胆地用int类型枚举值不要在数据库里存中文。例如号源状态0可约、1锁定、2已约、3停诊。存中文看着直观但写条件查询时容易出问题而且后期如果要扩展多语言或改文案存中文会让你哭。第三所有业务表统一带create_time和update_time字段JDK8时代用LocalDateTime配合MyBatis-Plus的自动填充功能写代码时完全不用手动维护这两个字段。3.3 字段设计避坑清单根据我见过的大量翻车现场整理一份数据库设计避坑清单用户密码必须加密存储答辩现场如果评委看到明文密码印象分会掉一大截。MD5加盐或者BCrypt都可以但一定不要明文。金额字段用DECIMAL(10,2)不要用float或double否则算挂号费统计时会出现1.9999999这种让人头大的数。时间字段统一用datetime别用varchar存时间字符串排序和区间查询都会很难受。外键约束要不要物理加我的建议是逻辑外键就好也就是建索引但不建立物理外键约束。理由很简单物理外键在写入时会做一致性校验在分页聚合、批量导入的场景下会影响性能而且项目里所有外键关联都靠应用层保证开发阶段调试更加灵活。每张业务表都要有主键且主键最好用数据库自增或者雪花算法ID。MyBatis-Plus的IdType.AUTO配自增主键是最简单的方式。4. 系统实现核心流程从代码编写到业务落实设计文档堆得再多最终都要落实到代码上。这一节记录我在做类似预约系统时的一些核心流程和处理思路你可以直接把思路转化成代码。4.1 权限拦截与登录态管理预约系统有三个角色权限拦截是绕不开的。Spring Boot下实现权限管理最简单的方案就是HandlerInterceptor ThreadLocal或session。具体做法是写一个LoginInterceptor在preHandle方法里判断当前请求是否携带登录凭证比如session里的userId。针对需要区分角色的接口再在注解或路径上进行角色校验。比如/admin/**的路径要求管理员角色/doctor/**要求医生角色/patient/**要求患者角色。这里有一个实操细节预留的公开接口——比如科室列表、医生列表——要单独在拦截器注册时排除掉不然患者没登录连看科室都看不了业务流程就卡住了。拦截器配置路径放行规则时用排除法逐个列出来千万别用放行一切再单独拦这种反向思路排查问题会绕。登录凭证不建议只存userId应该存一个LoginUser对象里面带userId、username、role。这样后续业务代码里获取当前用户信息时不需要每次查数据库。但要注意存session里的对象尽量精简序列化方便且不易出问题。4.2 排班生成与号源初始化的批量逻辑排班管理是最能体现工程思维的模块。管理员选择医生、日期、班次后系统要自动生成该时段内的所有号源记录。这里的循环逻辑很典型属于高频业务代码public void generateSchedule(ScheduleRequest req) { Schedule schedule new Schedule(); schedule.setDoctorId(req.getDoctorId()); schedule.setScheduleDate(req.getScheduleDate()); schedule.setShiftType(req.getShiftType()); schedule.setStartTime(req.getStartTime()); schedule.setEndTime(req.getEndTime()); schedule.setTotalSlots(req.getSlotCount()); schedule.setBookedCount(0); schedule.setStatus(1); scheduleMapper.insert(schedule); // 按时间跨度计算每个号源的具体时间点 LocalTime start req.getStartTime(); Duration step Duration.between(start, req.getEndTime()) .dividedBy(req.getSlotCount()); for (int i 0; i req.getSlotCount(); i) { AppointmentSlot slot new AppointmentSlot(); slot.setScheduleId(schedule.getId()); slot.setSlotTime(LocalDateTime.of(req.getScheduleDate(), start.plusMinutes(step.toMinutes() * i))); slot.setSlotSeq(i 1); slot.setStatus(0); slotMapper.insert(slot); } }这个循环里有一个容易被忽略的点每个号源的时间计算。口腔门诊常见的做法是均分时段比如9:00到11:30共150分钟放10个号每个号时间段15分钟从9:00开始顺延。这里直接用Duration计算即可。但要注意边界情况如果号源数量为0除法会报错所以接口层一定要加参数校验。排班生成后一定要做排班冲突检测——同一个医生在同一天同一班次不允许重复排班。最简单的方案是数据库对doctor_id schedule_date shift_type建唯一索引数据库层面的约束是最可靠的。4.3 预约并发控制的正确写法这是整个系统最值得讲的地方也是答辩时最容易出彩的点。先描述问题两个患者同时点同一个号源如果代码不加并发控制最后的超卖现象就会发生——一个号源被两个人预约成功。正确的做法是“先锁再查再更新”。我在实操中用得最顺手的方案是利用数据库的行级锁在更新号源状态时使用乐观锁条件更新。-- 伪SQL核心就是更新时带状态条件 UPDATE appointment_slot SET status 1 WHERE id #{slotId} AND status 0;映射到Service层逻辑是先执行这条UPDATE如果影响行数为1说明当前用户成功锁定了这个号源如果影响行数为0说明这个号源已经被别人抢走了直接返回“该时间段已被预约”的提示。这本质上就是一种乐观锁实现利用数据库自身的行锁保证同一时刻只有一个事务能成功更新。在此基础上为了保证做的这步和后续插入预约记录的事务安全还需要给整个业务方法加上Transactional事务注解。先改号源状态再插入预约记录两次数据库操作要么全部成功要么全部回滚。如果中途异常号源状态不会变成“已约”就不会产生脏数据。这里还有一个进阶考虑点如果号源数量很多、并发很大可以引入Redis做分布式锁但作为毕业设计用数据库乐观锁已经完全足够了而且说出来你还能讲清楚“为什么不用悲观锁”“乐观锁和悲观锁的适用场景”这类深度问题用来承接评委追问刚好合适。4.4 取消预约与号源释放的细节取消预约的业务逻辑相对简单但细节决定体验。患者取消预约时要判断条件——通常限定就诊时间前多少小时可以取消比如提前2小时。代码实现时就是拿当前时间和号源时间做比较。取消成功后要做三件事更新预约记录状态为已取消更新号源状态回可约status0更新排班表已约数量减1。这三步同样需要包在事务里。特别注意更新号源状态这一步不要漏掉很多初学者只改了预约记录结果号源还停留在已约状态下次排班的统计就错了。爽约的处理类似在定时任务或医生标记模块中把超过就诊时间仍然处于预约成功状态的记录标记为爽约。这里不赘述只需要知道这块在前后端都要有展示位就行。4.5 分页查询与统计报表实现后台管理页面的预约记录列表、医生排班列表统统需要分页。用MyBatis-Plus的Page对象非常顺手。我这里写一个典型的条件分页查询写法public PageResultAppointmentRecordVO pageQuery(AppointmentQuery query) { PageAppointmentRecord page new Page(query.getCurrent(), query.getSize()); LambdaQueryWrapperAppointmentRecord wrapper new LambdaQueryWrapper(); wrapper.eq(StringUtils.hasText(query.getPatientName()), AppointmentRecord::getPatientName, query.getPatientName()); wrapper.eq(query.getDoctorId() ! null, AppointmentRecord::getDoctorId, query.getDoctorId()); wrapper.eq(query.getStatus() ! null, AppointmentRecord::getStatus, query.getStatus()); wrapper.orderByDesc(AppointmentRecord::getCreateTime); PageAppointmentRecord result recordMapper.selectPage(page, wrapper); // 转换为VO补充医生姓名等冗余字段 }统计报表建议做成简单的柱状图或者折线图展示。前端可以用ECharts后端只要提供“某时间段内每日预约量”这样的汇总数据即可。SQL层面上就是按日期分组count注意日期格式化时用DATE_FORMAT函数把datetime截断到天。5. 典型问题排查实录我踩过的那些坑照着上面的方式去实现大体上是能跑通的。但在实际开发过程中有一些问题几乎必然出现。我把典型的坑记下来你遇到了少走弯路。5.1 明明写了Transactional为什么数据还是不一致这是事务失效的经典场景。常见原因有两个一是方法被同一个类内部调用导致Spring AOP代理失效——比如Controller调用了Service里的public方法AA内部又调用了本类的public方法BB上的Transactional是不会生效的二是方法不是public导致代理无法拦截或者是自调用的方式绕过了代理。解决方案很简单把需要事务保证的独立操作拆到不同的Bean里调用或者直接在入口方法上加事务。排查时记住一个口诀事务注解要加在入口方法上而不是被调用的内部方法上。5.2 前端明明传了日期后端收到的却是null这个问题根因多半是前端日期格式和后端接收格式不匹配。Spring MVC默认的日期转换只支持yyyy/MM/dd而前端用的都是yyyy-MM-dd拿到这种格式就会转成null。解决办法是在接收日期的实体字段或者Controller入参上加DateTimeFormat注解。DateTimeFormat(pattern yyyy-MM-dd) private LocalDate scheduleDate;还有一个更容易踩的坑查询条件带时间时前端传来的是带T的ISO时间格式比如2024-01-01T12:00:00后端LocalDateTime可以直接接收但如果中间隔了一层字符串拼接就很容易出幺蛾子。建议在项目全局配一个Jackson的日期格式化配置前后端统一用yyyy-MM-dd HH:mm:ss。这一条配置能省掉大量时间格式化的问题。5.3 号源状态并发测试模拟出来的超卖根本复现不了用Postman做并发测试时线程数设置不够导致场景复现不出来的情况很常见。其实这种并发问题要有意识地在代码review阶段就堵住写代码的时候强制要求自己使用“条件更新”写号源状态变更不要图省事先select后update。最高效的验证方式是写一个Jmeter脚本设置200个线程同时请求同一个号源ID观察最终该号源记录是不是只被一个患者持有。如果出现多个预约记录关联同一个号源ID说明并发控制还是有问题按上面的乐观锁方法改。5.4 页面报503或者404Tomcat端口冲突这类环境类问题在开发机上也常遇到。Tomcat端口被占用时最直接的排查命令是netstat -ano | findstr 8080。找到占用进程后end process或者改掉配置里的端口。我这里想说的不是这个命令本身而是开发时最好在application.yml中把端口设置成非常规端口比如8081可以有效避开一些莫名其妙的冲突。5.5 数据库连接爆了连接池耗尽出现这个问题通常是开发时开了太多连接没关或者在遍历中频繁调用Mapper查询。MyBatis-Plus在这方面其实是救命的但如果你在循环里做了N次查询依然会把连接池拖垮。解决办法有两个方向一是优化代码把循环查询改成批量查询或一次性join查出二是调大连接池配置——但治标不治本。设计模式上一定要避免在循环里查询数据库尽量一次性查出来再内存中匹配组装。6. 项目演示与答辩辅助让评委看出你的真实水平代码写完了系统的加分项其实在演示和答辩环节。一个设计再好的系统讲不明白也白搭。6.1 演示前的数据准备与演示脚本演示前一定要准备好演示数据。比如我建议你在项目初始化SQL脚本中预置5个科室每个科室2-3个医生覆盖不同职称当前日期之后连续7天的排班数据至少1万条历史预约记录用于演示分页和统计查询演示脚本大概按这个顺序来登录管理员账号 → 查看今日预约统计看板 → 新增一个医生排班 → 模拟患者注册 → 按科室筛选医生 → 选择时间段预约 → 查看我的预约 → 取消预约 → 管理员查看取消后的号源释放 → 演示高峰期并发预约如果条件允许。这个顺序实际上就是核心业务流的水到渠成流程评委跟着你的鼠标走思路不会乱。不要一上来就展示代码或者数据库表结构先让业务跑起来再讲实现。6.2 答辩高频问题准备清单根据我历年听团队同学答辩的经验整理了一份高频问题清单你可以提前准备为什么用Spring Boot而不用SSH对比各自的优缺点MyBatis和Hibernate的区别你为什么选MyBatis乐观锁和悲观锁的区别你的系统里用在了哪里如果并发量到1万你的系统会怎么优化从缓存、队列、读写分离几个方向答就好号源状态是怎么流转的取消预约后状态是怎么流转的数据库索引是怎么设计的哪些字段加了索引为什么预约记录表的冗余字段会不会造成数据不一致可以答冗余字段来源于主数据且通过应用层保证一致性在查询性能和一致性之间做了取舍这些问题都不刁钻但都在你的项目里能找得到对应点。提前把答案在脑子里过一遍答辩时候不慌。6.3 项目演示中的加分小细节几个我觉得很提升观感的小细节管理员后台做一个近7日预约量统计的小折线图不用复杂但能立刻展示你掌握了图表组件的用法。预约成功后自动弹窗提示“预约成功请于就诊前15分钟到科室报到”这种业务细节评委很吃。口腔医院科室真名呈现而不是随便叫一科二科细节体现你的真实专业度。演示时准备一页系统架构图不用Mermaid用Word或PPT画个简单方框图展示前后端分层结构即可这部分就是答辩时的讲解辅助工具。7. 扩展与优化方向做完之后还能往哪里走最后聊点扩展方向。一个预约系统做完能加的东西其实非常多对有心拿高分或者作为求职项目的同学这些方向可以作为备选。第一个方向是消息通知。预约成功、停诊取消、就诊提醒都可以通过站内信、邮件或短信模板实现。哪怕只做站内消息列表也能让你的系统在交互完整性上显著拉开差距。第二个方向是黑名单机制。爽约次数超过阈值限制预约权限这也是医疗机构真实存在的规则。加一个配置项就能做逻辑不复杂但很出彩。第三个方向是缓存优化。把科室列表、医生列表这类不常变更的数据放进Redis缓存预约时将号源状态同步到Redis减少数据库压力。这部分如果做进去答辩讲系统架构的时候素材会丰富很多。我在实际做类似系统的时候最深刻的体会是毕业设计选题满大街都是但每份代码背后的思考深度完全不同。预约挂号系统看似简单可一旦把业务规则、并发控制、状态流转这些点全部做到位它就从一个学生作业摇身变成了一个能讲述完整业务故事的工程化项目。希望这篇文章能帮你少走一些弯路把时间花在真正有价值的逻辑思考上。
📌 标签:
工业官网
设计趋势
AI 建站
SEO
获取完整报告 →
RELATED ARTICLES
推荐阅读
2026/10/10 7:24:11
Transformer架构魔改实战:从注意力机制到稀疏化与MoE
2026/10/10 7:24:11
从“11666666”看重复数字输入背后的数据质量与安全设计
2026/10/10 7:24:11
Windows内核性能监控:PCW计数器集实战指南
2026/10/10 9:04:54
Rust 安全审计之 STRCMP 缺陷识别:string-comparison-finder 指南
2026/10/10 9:04:54
【ArkUI 入门练中学】第19课:状态管理 V2 深度解析与迁移
2026/10/10 9:04:54
ROS2 Humble 从入门实战教程:第五章 ROS2工作空间与功能包:开发过程的大本营【VMware Ubuntu22.04实操】
2026/10/10 9:04:54
Codex默认模式提速50%:减少返工与结构化提示词实战
2026/10/10 9:04:54
DeepSeek提升自动化测试效率:用例生成、失败分析与AI维护实战
2026/10/10 8:59:51
实测8款降AI率工具:从原理到实操,彻底告别AI味
2026/10/10 0:03:38
工业软件标准化路线图:国产替代的落地施工图
2026/10/10 0:03:38
VCMI安卓版实操指南:原生运行英雄无敌3的3步技术落地
2026/10/10 0:03:38
稀疏多通道盲反褶积的MATLAB算法实现与参数调优
2026/10/10 3:42:06
Jev+Agent接管浏览器:browser-use实战与jev-ultrafast性能优化
2026/10/10 3:42:01
多智能体集群实战:DeepAgents编排、MCP与A2A协议及Skills体系
2026/10/10 3:41:58
hindsight:面向LLM应用的事后可观测性工程实践
2026/10/10 3:41:56
我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
2026/10/10 3:41:54
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
2026/10/9 11:36:17
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)