Java+SpringBoot+SSM智能医疗辅助系统实战解析
智能医疗辅助系统这个项目我从去年开始陆续带过好几个版本的开发从纯SSM架构到SpringBoot整合从单机部署到前后端分离踩过的坑加起来能写一本小册子。回头看“基于JavaSpringBootSSM的智能医疗辅助系统”这个选题之所以被这么多毕业设计和项目实战选中核心原因就一个字——稳。技术栈足够经典业务场景足够清晰智能辅助这个方向又天然有点“技术含量”可以讲不至于让项目变成纯CRUD的堆砌。这篇文章我不打算讲虚的直接把这个项目的架构设计、功能模块、数据库表结构、代码实现、部署调试、二次扩展全拆开来讲。适合正在做类似课题的在校学生也适合想拿一个完整Java后端项目练手、或者准备把这套东西改造成自己作品的开发新人。看完你至少能少走一半弯路。1. 项目定位与技术选型这套组合到底解决什么问题1.1 SpringBootSSM不是重复建设很多人第一次看到“SpringBootSSM”会有疑问SpringBoot本身就是一套框架SSM是三套框架这俩放一起是不是重复了这个理解需要纠正一下。SSM指的是Spring、SpringMVC、MyBatis这三件套它们负责的是业务代码的组织方式和数据访问方式。Spring管对象和依赖SpringMVC管HTTP请求的路由和响应MyBatis管SQL和实体类的映射。这三者组合之后项目的代码结构就已经非常完整了。而SpringBoot在这个组合里干的事是“简化装配”——它用自动配置把原本需要大量XML配置的东西数据源、事务管理器、拦截器、视图解析器全部在启动时自动搞定再用内嵌的Tomcat把部署步骤砍掉你只需要一个启动类就能把整个应用跑起来。所以严格意义上说这个项目的底层运行逻辑还是SSM的SpringBoot只是一个“更省事的运行环境”。用SpringBoot来承载SSM体系最大的好处就是新手也能快速把项目跑起来不需要接触那些已经过时的XML配置地狱。实际开发中SpringBoot 2.x版本配MyBatis时项目里依然会保留MyBatis的Mapper文件或注解SQL这部分代码写法和传统SSM完全一致。我在这个项目里选型的时候有一个原则数据库用MySQL持久层用MyBatis权限用拦截器Session实现智能辅助部分先走基于规则的匹配算法不一开始就引入机器学习。原因很简单——先把业务链路跑通再谈优化。如果一上来就接一个TensorFlow或者PaddlePaddle的服务光环境就够折腾好几天的最后项目还可能因为依赖太重跑不起来。1.2 功能架构与角色权限划分智能医疗辅助系统这个名字听着可能有点大但落到实际功能上它做的事情其实非常明确帮患者完成挂号前的分诊判断帮医生在接诊时提供用药和诊断的参考建议帮管理员管理好科室、医生、药品和病历数据。整个系统按使用者角色划分为三条线患者端在线注册、完善个人健康档案、根据症状描述获得分诊建议、在线挂号、查看历史病历和用药记录。这个流程对标的是真实医院里“先分诊后挂号再就诊”的线上化改造。医生端查看当日挂号列表、接诊患者、录入诊断结果和医嘱、系统自动弹出用药冲突提醒和同类病例参考。这个端是智能辅助真正发挥作用的地方。管理员端维护科室信息、审核医生账号、管理药品数据库、查看系统运营数据每日挂号量、热门科室、疾病分布。这些数据统计本质上就是为管理者做决策辅助。三个角色对应三套权限我建议用拦截器统一处理。网上很多项目把权限判断写在每个Controller里那是最糟糕的写法——改一个规则要动几十个文件。正确做法是定义一个LoginInterceptor在preHandle里判断当前Session中的用户角色再根据请求路径前缀/patient/、/doctor/、/admin/**做放行或拦截。医疗系统还有一个和普通管理系统不一样的地方数据安全性。病历、用药记录、身份证号这类敏感信息在前端展示时要做脱敏处理比如手机号只显示前三位后四位后端的查询接口要严格控制返回字段不能一个SELECT *把整张表数据全吐出去。为了让项目更完整我还建议加上操作日志表记录每次关键操作的账号、时间、类型和数据变更摘要这在写论文的时候也是一个很好的创新点。2. 核心模块拆解智能辅助功能怎么设计和落地2.1 症状分诊从关键词匹配到科室推荐智能辅助系统最核心、也最能讲故事的就是智能分诊模块。用户输入“我头疼、发烧、咳嗽”系统要能判断出“可能是呼吸内科也可能是普通内科”然后给出推荐科室排序和就诊建议。第一版我建议直接做基于规则的关键词匹配不要上来就搞机器学习。原因有三条一是医疗数据属于强隐私拿不到大规模真实标注数据做训练二是规则方法的效果可控出问题能定位三是后期想升级时规则引擎的代码可以平滑迁移到算法模型不浪费。具体实现思路是这样的建一张症状科室规则表每条规则包含一组症状关键词和一个推荐的科室再加上一个权重字段。患者提交症状描述后先把描述做简单分词再把分词结果和规则表里的关键词做匹配每个科室累计命中关键词的权重分最后按分数排序返回前三个科室。Service public class TriageServiceImpl implements TriageService { Autowired private SymptomRuleMapper symptomRuleMapper; Override public TriageResult triage(String symptomDesc) { // 1. 简单分词按空格、逗号、中文常见分隔符拆分 ListString keywords Arrays.asList(symptomDesc.split([,、\\s])); // 2. 查询所有启用的规则 ListSymptomRule rules symptomRuleMapper.selectEnabledRules(); // 3. 统计科室得分 MapString, Integer scoreMap new HashMap(); for (SymptomRule rule : rules) { for (String keyword : keywords) { if (rule.getKeyword().equals(keyword)) { scoreMap.merge(rule.getDeptName(), rule.getWeight(), Integer::sum); } } } // 4. 排序取TopN return scoreMap.entrySet().stream() .sorted(Map.Entry.String, IntegercomparingByValue().reversed()) .limit(3) .map(e - new DeptSuggestion(e.getKey(), e.getValue())) .collect(Collectors.toList()); } }注意这里的分词不要用太重的工具一个简单的分隔符切分就能覆盖大多数测试场景。实际部署环境里如果症状描述是整句中文比如“我最近三天一直头痛并且有点发烧”简单切分就失效了。我的做法是引入了轻量级的分词工具库比如Hutool自带的智能切分或者Ansj把句子先切成词再和规则表匹配。分词工具的选择在真实项目中是个关键点后面章节我会专门展开讲。还有一个细节必须做对分诊结果页一定要加一句免责声明——“本结果为智能辅助建议不能替代医生面诊请以医院实际诊断为准”。这句话既是合规要求也是系统设计的边界医疗系统永远不能给人“已经确诊”的错觉。2.2 用药冲突校验与提醒的坑用药冲突提醒是整个系统里我觉得最有医疗专业味儿的模块也是答辩时最容易加分的点。它的核心逻辑不复杂维护一张药品禁忌关系表当医生开完处方后系统自动检查处方中是否存在药物两两冲突的情况有冲突就弹窗提醒。但这里有三个非常容易踩的坑第一药品数据不能用编造的假数据。很多毕设项目图省事自己随便编几十个药名然后写死十几条冲突关系。这样答辩时一旦被问到数据来源就会很难看。正确做法是去用公开的口服药说明书数据整理出一个子集标注冲突类型药效增强、药效降低、禁忌同服等再批量导入数据库。第二冲突校验不能只在医生开处方时做一次。患者如果同时在多个科室挂号可能两轮就诊分别拿到不同的药所以提交药品记录或患者线下自行添加用药时前端也要调用同一个校验接口。这个过程中同一个校验Service必须保持无状态可以随时复用。第三校验结果要分级。不是所有“冲突”都等同处理比如“禁忌同服”是红色级别必须阻止“会影响药效”是橙色级别只做提示“需要监测肝肾功能指标”是黄色级别仅标注。三种级别对应三个弹窗样式和不同的强制程度这样设计才是真实医疗软件的做法。public class DrugConflictChecker { private final DrugConflictMapper conflictMapper; public ListConflictWarning check(ListPrescriptionItem items) { ListConflictWarning warnings new ArrayList(); for (int i 0; i items.size(); i) { for (int j i 1; j items.size(); j) { Long drugIdA items.get(i).getDrugId(); Long drugIdB items.get(j).getDrugId(); DrugConflict conflict conflictMapper.selectByPair(drugIdA, drugIdB); if (conflict ! null) { warnings.add(new ConflictWarning( conflict.getLevel(), conflict.getDescription(), items.get(i), items.get(j))); } } } return warnings; } }2.3 健康档案与统计报表健康档案模块的价值在于“长期可追踪”。患者每次就诊产生的病历、检查结果、用药记录、过敏史都应该按时间线汇总到个人健康档案里。这个模块的页面不复杂但数据库查询设计非常考验细节。一个患者可能有多条病历、多条检查、多条用药记录如果直接JOIN很容易出现条数膨胀导致前端数据对不上。我的建议是列表页按病历聚合每条病历下再嵌套加载检查明细和用药明细用懒加载的方式点开才请求子列表。这样既保持页面响应速度又不会让SQL变得太复杂。统计报表端就简单多了用药记录表的流水即可支撑周用药趋势曲线病历表按疾病分组即可支撑疾病占比饼图。图表组件建议用ECharts后端只提供JSON数据接口前端做渲染这套方案在管理端页面里百试不爽。值得注意的是健康档案接口一定要加数据权限医生只能查看当天挂给自己号的患者档案不能随意搜索全库管理员虽然可以看全部数据但浏览日志必须留痕。这部分设计在文档里写清楚是体现工程素养的好地方。3. 数据库设计与接口实现把底层逻辑讲透3.1 核心表结构设计数据库设计我强烈建议用10张表起步但这10张表不是随便建的它们的之前关系要能支撑整个业务闭环。我列出最核心的表结构并给一些关键字段加上注释和设计理由。患者信息表patientid、用户ID与用户表关联、姓名、身份证号、性别、出生日期、过敏史、既往病史、紧急联系人、联系电话。其中过敏史和既往病史虽然描述性很强但恰恰是智能辅助判断的重要输入不能设计成单值字段。科室表departmentid、科室名称、科室编码、位置、简介、是否启用。精神状态上科室编码要设计成唯一的业务标识比如K001代表呼吸内科这样后面做症状映射和统计都可以直接用编码关联。医生信息表doctorid、用户ID、科室ID、工号、姓名、职称、擅长领域、排班状态。这里医生和患者的身份都复用了用户表user用户表通过一个角色字段role来区分三种账号登录时统一走用户表校验再用角色进入不同首页。这种设计叫单表多角色比建三张独立账号表清爽得多也好扩展。症状规则表symptom_ruleid、症状关键词keyword、科室编码dept_code、权重weight、状态status。它就是智能分诊的“规则集”建议预设50条以上有效规则——头痛对应神经内科和普通内科胸痛对应心内科和呼吸科腹痛对应消化科等——规则数量太少会导致分诊结果看起来很没有说服力。药品信息表drugid、药品名称、通用名、规格、厂家、说明书URL、存储条件。通用名是为了处理同一个药不同商品名的情况做冲突校验时要按通用名比对才准确。药品冲突表drug_conflictid、药品A通用名、药品B通用名、冲突级别、冲突描述、处理建议。冲突级别用TINYINT存储1为红2为橙3为黄对局部分会做枚举映射。这张表是要真实填充数据的建议填充量至少50条覆盖面才像样。挂号单表registrationid、患者ID、医生ID、科室ID、时间段、挂号费、状态待就诊/已完成/已取消、分诊建议快照。分诊建议快照特别重要——把患者当时输入的描述和推荐的科室存成JSON字段这样后续即便规则变了历史记录依然能还原当时的场景。病历表medical_recordid、患者ID、医生ID、挂号单ID、主诉、现病史、检查结果、诊断结论、治疗方案、创建时间。主诉和现病史是医生录入的诊断结论最终由医生确认智能辅助系统的建议只能作为参考填入一个独立字段不能直接覆盖医生结论。用药记录表prescriptionid、病历ID、药品ID、单次剂量、频次、天数、数量、备注。这里的“单次剂量”和“频次”是后续做用药冲突校验的重要输入缺了它们校验就不完整。操作日志表operation_logid、账号、操作类型、请求URL、请求参数摘要、IP地址、创建时间。这张表撑起了整个系统的审计能力也方便答辩时展示“安全设计”。3.2 后端接口与统一返回协议接口设计的第一个重点是统一返回体。一个项目中如果每个Controller都return hello、return map、return null前端对接人员会被逼疯。我习惯定义一个通用的ResultT类包含code200成功500失败401未登录、message提示信息、data业务数据三个字段。所有接口只要返回Result.success(data)或Result.error(xxx)即可统一性非常高。public class ResultT { private int code; private String message; private T data; // 省略 getter/setter public static T ResultT success(T data) { ResultT result new Result(); result.code 200; result.message success; result.data data; return result; } }第二个重点是接口的路径设计和请求方式。我的习惯是资源名词复数形式GET /api/patient/{id}查询患者、POST /api/registration新建挂号单、PUT /api/medical-record/{id}更新病历、DELETE /api/registration/{id}退号。这套风格本身就是一个加分项它是业界标准的RESTful实践。第三个重点是分页。列表查询一律用PageHelper插件前端传页码和每页大小后端返回总条数和当前页数据。注意PageHelper有个非常坑的问题——它底层是拦截器修改了SQL所以分页查询必须在紧跟其后的查询语句上立即生效中间不能有任何其他SQL操作否则分页会被错误的SQL消费掉。这个坑我踩过不止一次排查了半天最后发现是PageHelper的线程复用问题。第四个重点是事务。凡是涉及写操作且跨多张表的业务——比如新建挂号单要同时校验医生排班、扣减号源、生成记录——都必须在Service方法上加Transactional注解。Spring的事务默认只在遇到RuntimeException时回滚如果代码里把业务异常包装成了普通的checked异常事务是不会自动回滚的这个细节非常容易成为隐藏Bug。4. 环境搭建、调试与问题排查实录4.1 从零启动完整步骤拿到源码把项目跑起来对于完全不熟悉这套技术栈的同学来说确实是一个不小的门槛。我整理一份最小化可操作的启动清单按顺序执行就行。第一步安装JDK 8或11。SpringBoot 2.x对JDK 8和11兼容性最好不建议一上来用17甚至21虽然能跑但部分老版本的依赖会报“无法访问”的错误。装完JDK后在命令行执行java -version验证环境变量是否生效。第二步安装Maven在settings.xml中把镜像源换成国内仓库镜像不然下载依赖的速度会让人崩溃。换镜像这件事特别重要SpringBoot全家桶加MyBatis加Druid加PageHelper几十个依赖包加起来超过100MB官方仓库在国内非常慢。第三步安装MySQL将数据库字符集设为utf8mb4执行项目中的sql脚本文件创建数据库和表结构。导入完数据之后用Navicat或DataGrip连上去验证表的条数重点确认症状规则表和药品冲突表的填充数据是否已存在。第四步修改项目的application.yml文件。最核心的三项配置是端口号默认8080即可、数据库连接地址、账号密码。如果数据库密码和项目默认值不一致这里不改启动必报连接失败。第五步启动项目主类看控制台输出。当见到“Started Application in x.xxx seconds”时说明启动成功浏览器访问http://localhost:8080即可进入系统首页。如果端口被占用修改server.port换一个端口再试即可。整个过程中遇到最多的问题就是配置文件对不上。我建议把个人本地配置单独抽出一个application-dev.yml把代码仓库里的默认配置改成生产配置这样本地开发和服务器部署互不干扰是成熟团队的标准做法。4.2 高频报错排查表我整理了在这个项目里被问得最多的报错情况和对应的解决方案直接对照处理即可。报错现象原因分析解决方案Access denied for user rootlocalhost数据库账号密码错误或没有远程访问权限在application.yml核对账号密码必要时执行GRANT ALL PRIVILEGES ON *.* TO root%授权The server time zone value й׼ʱ is unrecognizedMySQL连接串没有指定时区在jdbc-url末尾追加?serverTimezoneAsia/ShanghaiuseUnicodetruecharacterEncodingutf8Invalid bound statement (not found)Mapper接口和XML文件没有绑定成功检查Mapper接口的包路径与XML文件的namespace是否一致确认mybatis.mapper-locations配置正确Port 8080 was already in use端口被其他进程占用换端口或执行netstat -ano找到进程后结束任务Failed to configure a DataSource项目启动时找不到数据源配置检查application.yml中spring.datasource相关配置是否存在及格式是否正确There is no getter for property named xxxMyBatis映射实体属性名对不上数据库下划线命名和Java驼峰命名需要开启map-underscore-to-camel-case: true前端跨域请求被拦截端口不同导致跨域后端配置CORS全局跨域过滤器或使用CrossOrigin注解这里面还有一个很容易被忽略的问题当项目同时用Druid连接池和SpringBoot 2.x时部分Druid版本会存在和JDK高版本不兼容的情况表现是启动时日志报一堆warning但不影响运行。如果要消除这些警告可以升级Druid到1.2.x以上版本。版本兼容性在毕设项目的环境搭建环节是最大变量时间紧的情况下宁可保留老版本JDK8 Maven3.6组合也不要盲目追新。5. 从毕设到生产二次开发与扩展方向5.1 辅助决策的算法升级路径当前基于规则表的智能分诊本质上是一个“关键词命中分数相加”的模型优点是逻辑透明、性能极快、规则容易调整但缺点是遇到没有覆盖到的表达方式就失灵。比如规则表里存了“发烧”患者说“体温升高”匹配就失败了。如果想把这个项目往上提升一个档次两个方向可以考虑。方向一引入分词和相似度匹配。把患者描述当作一个整体对它做中文分词然后把每个词去匹配规则表的症状词匹配不上时用编辑距离或Cosine相似度计算当前词和规则词之间的text相似度超过阈值的也算命中。这个方案不需要训练数据只用开源词库和基础算法就能实现工作量也不大。方向二对接大语言模型API做症状结构化。把患者的自然语言描述发给模型让模型返回结构化结果症状列表、疑似科室、建议就诊科室和紧急程度。这种方案呈现效果非常惊艳而且实现非常简单——只要写一个Service封装接口调用再处理JSON返回结果。但这个方案有几个前提网络环境要可达、API密钥要配置、响应时间要在可接受范围。从实战角度看我建议把方案一作为主体方案二做成一个“智能扩展”开关开启时可以调用云服务增强关闭时回退到本地规则引擎这样系统既有智能化亮点又不会变成完全依赖外部服务的“空中楼阁”。5.2 前端架构与移动端扩展很多毕设项目的前端页面是直接用Thymeleaf或JSP后端模板渲染的页面和Java代码混在一起改一个静态样式要重启服务开发效率很低。SparkBoot整合SSM体系本身支持静态资源分离如果愿意把前端拆出来做成独立的Vue应用用axios调后端接口整个项目的工程化水平会明显提升。前后端分离之后部署上稍微多了一个Nginx静态服务但换来的是页面响应更快、逻辑更清晰也更贴合企业的真实开发模式。移动端扩展方面如果时间有限不需要专门开发App做一套H5页面放在微信端访问即可。接口层只需要增加对应权限校验复用现有分诊、挂号、档案查询的接口就能快速搭出一个移动端版本。需要额外注意的是移动端的页面布局适配和接口交互的轻量化比如列表分页要控制返回条数处方详情这种大字段建议单独接口按需加载。另外我建议给系统增加一个“接口输出”的功能——把智能分诊、用药冲突校验这类能力做成可调试的Rest接口这样无论是自己写测试脚本还是演示给别人看都比在页面上点来点去直观得多。比如POST /api/ai/triage接收症状描述返回科室建议用Postman一次调用就能看到完整效果这对答辩演示也是很大的加分项。做医疗类项目有一个贯穿始终的原则任何“智能”能力都只能是辅助不能是替代。从技术架构上我建议把用户提示语、免责声明、数据安全等级、操作留痕这些细节全部落实到位这比算法本身更能体现一个开发者的工程素养。这个系统做完之后我自己最大的体会是真正有价值的不是写了多少行代码而是能不能把“业务边界”和“技术边界”同时想清楚。最后再分享一个小技巧——在部署调试阶段把所有核心接口的查询SQL先手动在数据库执行一遍确认数据正确后再去排查Java代码的问题你会发现排查效率不止翻一倍。

相关新闻

传奇模拟游戏源码拆包:C++服务端与客户端编译连接实战

传奇模拟游戏源码拆包:C++服务端与客户端编译连接实战

简介:这份资源是一套完整的传奇模拟游戏源码,包含客户端与服务器端两部分,面向具备一定C基础、希望深入理解游戏服务器开发与网络通信的开发者。客户端负责界面展示、角色控制与场景渲染,服务器端承担玩家状态同步、游戏规则执行与…

2026/10/10 20:12:53 阅读更多 →
Python线性回归预测房价:批量梯度下降从零实现与源码解析

Python线性回归预测房价:批量梯度下降从零实现与源码解析

简介:基于线性回归实现波士顿房价预测的完整毕设项目源码包,面向计算机、人工智能、自动化等专业的学生与开发者,适合毕业设计、课程设计及机器学习实践入门。项目采用批量梯度下降(BGD)优化线性回归模型,代…

2026/10/10 20:12:53 阅读更多 →
Vue3组件通信指南:props、emit、defineModel、provide/inject一次讲清

Vue3组件通信指南:props、emit、defineModel、provide/inject一次讲清

我入行这些年,被问得最多的问题里绝对有这一条:“Vue3里父子组件到底怎么传数据?”尤其是从Vue2切过来、或者刚接触组合式API的开发者,遇到defineProps、defineEmits、defineExpose、defineModel这一堆“define”开头的新东西&…

2026/10/10 20:12:49 阅读更多 →

最新新闻

MSDV方法:如何形式化证明模拟功能模型与晶体管电路的一致性

MSDV方法:如何形式化证明模拟功能模型与晶体管电路的一致性

模拟功能模型和晶体管电路的一致性,是模拟混合信号验证里一块老硬骨头。这篇论文速读想聊的MSDV方法,核心就一句话:怎么用形式化的手段,证明你写在系统级的功能模型,和真正拿去流片的晶体管级网表,在行为上…

2026/10/11 0:03:29 阅读更多 →
用Python自建数据看板:从Excel报表到权限管控的完整实践

用Python自建数据看板:从Excel报表到权限管控的完整实践

1. 为什么我从手工Excel转向自建Python看板1.1 那个每周五下午重复了半年的动作相信不少负责运营报表的人都经历过这个循环:周五下午两三点,各业务线把数据丢过来,我打开一个积累了多年的Excel大表,用透视表拖出本周销量、环比、区…

2026/10/11 0:03:29 阅读更多 →
经济学为什么充满数学公式?从精确表达到决策工具的全面解读

经济学为什么充满数学公式?从精确表达到决策工具的全面解读

为什么经济学里有那么多数学公式?很长一段时间里,“经济学”三个字在我脑海里就是一幅图谱:一边是报纸上经济学家张口就来的政策点评,一边是教材里密密麻麻的方程组和希腊字母。我敢打赌,不少人和我最初的感受一样——…

2026/10/11 0:03:29 阅读更多 →
软件工程毕设提速:8款AI工具助你论文代码双线推进

软件工程毕设提速:8款AI工具助你论文代码双线推进

又是一年毕业季,软件工程专业的学生开始焦虑了。一边是要求越来越严的论文:开题、文献综述、系统设计、测试分析,每一章都要言之有物;另一边是必须跑得起来的代码:前端、后端、数据库、部署,哪一个环节都不…

2026/10/11 0:03:29 阅读更多 →
UE动画修改实战:从资产编辑到重定向与蒙太奇驱动

UE动画修改实战:从资产编辑到重定向与蒙太奇驱动

做UE开发,不管你是做单机玩法、多人在线,还是虚拟制片、数字人,迟早会碰上一个绕不开的需求:动画修改与动画编辑。角色拿来的动作总是“差那么一点意思”——走路颠簸、抬手太高、攻击判定跟动画错位、换个体型骨骼就完全变形………

2026/10/11 0:02:28 阅读更多 →
Tarjan算法详解:用一次DFS找出有向图所有强连通分量

Tarjan算法详解:用一次DFS找出有向图所有强连通分量

有向图里的“互相可达”现象,其实比你想的更常见。模块A调用模块B,模块B又回调模块A;两个微服务互为依赖;社交平台上你关注我、我关注你,这些一旦被画成一张有向图,就会出现一群节点互相之间都能走通的小团…

2026/10/11 0:02:28 阅读更多 →

日新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

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

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

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

月新闻

我发现了一个新思路:用 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/10 5:23:50 阅读更多 →
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/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练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/10 10:38:42 阅读更多 →