logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Spring Boot 中优雅地使用责任链模式(@Order 实战)

摘要:当业务逻辑中的if-else判断过多时,责任链模式是最佳解决方案。本文介绍了如何利用Spring Boot的@Order注解实现责任链模式,将复杂的业务流程分解为多个独立处理单元。通过定义Handler接口、Context对象和Chain执行器,配合@Order控制执行顺序,可以有效消除冗长的if-else结构,使代码更清晰、可维护性更强。这种模式特别适合导出流程、审批流等场景,让复杂业务逻

文章图片
#spring boot#责任链模式#windows
Pinecone 在国内环境下的稳定使用姿势

在国内使用Pinecone向量数据库时,常因DNS解析和gRPC连接问题导致失败。核心问题在于过早初始化连接,特别是在JVM启动初期。解决方案包括:1) 通过Spring Bean延迟初始化;2) 使用懒加载(@Lazy);3) 在ApplicationReadyEvent事件后操作。虽然Thread.sleep(5000)可临时解决问题,但不建议用于生产环境。最佳实践是结合Spring生命周期管

文章图片
#java
小智医疗:Java大模型应用项目全流程实战

本文介绍了硅谷小智AI助手的开发实现,主要包含两大功能模块: 医疗AI助手开发: 创建了具备聊天记忆和持久化功能的XiaozhiAgent 设计了详细的医疗提示词模板,包含角色定义、功能范围、数据要求和交互规范 实现了基于MongoDB的对话记忆存储 封装了前后端交互的对话对象和Controller接口 函数调用功能: 演示了如何通过@Tool注解创建数学工具类 展示了AI自动判断并调用工具完成数

文章图片
#java#人工智能#开发语言
避免 JOIN 灾难:为什么必须“小表驱动大表”?

摘要: 大表JOIN小表时,核心原则是小表驱动大表且JOIN字段需有索引,否则易引发性能问题(如全表扫描、大量随机IO)。MySQL采用嵌套循环(Nested Loop),驱动表越小、循环次数越少;被驱动表若无索引会导致灾难性扫描。优化方法包括:强制小表驱动(STRAIGHT_JOIN)、确保JOIN字段索引、过滤条件前置、避免数据类型不一致及复杂计算。案例显示,优化后性能可从分钟级提升至毫秒级。

文章图片
#mysql#数据库
子网掩码与网络规划全解析:从 /24 到 /21 的直观理解

摘要:子网掩码和CIDR是局域网规划的核心概念。子网掩码区分IP地址的网络号和主机号,如255.255.255.0表示/24(前24位网络号)。CIDR(如/24、/23)直观展示网络位数与主机位数的关系:/24支持254台设备,/23支持510台,/22支持1022台,/21支持2046台。网络规划应根据规模选择掩码:小型网络用/24,中型用/23,大型用/22或/21。但需注意,扩大子网会增加

文章图片
#网络
大数据之电商数仓(4) | 采集日志Flume

目录集群规划项目经验之Flume组件日志采集Flume配置Flume的ETL和分类型拦截器集群规划项目经验之Flume组件1.Source(1)Taildir Source相比Exec Source、Spooling Directory Source的优势TailDir Source:断点续传、多目录。Flume1.6以前需要自己自定义Source记录每次读取文件位置,实现断点续传。断点续传的意思

#大数据#flume
SSL certificate problem: self signed certificate in certificate chain

公司bitbucket只支持https地址,需要client配置忽略https证书检验。提示信息为SSL认证失败,可以关闭SSL的认证。

文章图片
#ssl#网络协议#网络
反转控制与依赖注入详解:以订单处理系统为例

摘要:本文通过电商订单处理案例演示控制反转(IoC)和依赖注入(DI)的应用。传统方法中,OrderService直接创建PaymentService和NotificationService实例,导致强耦合、难以扩展和测试困难。改进方案采用依赖注入:定义服务接口,通过构造函数注入依赖。这样做实现了松耦合(可轻松替换实现类)、灵活扩展(不改动OrderService即可新增功能)和可测试性(支持Mo

文章图片
#java#开发语言#spring
小智医疗:Java大模型应用项目全流程实战

本文介绍了硅谷小智AI助手的开发实现,主要包含两大功能模块: 医疗AI助手开发: 创建了具备聊天记忆和持久化功能的XiaozhiAgent 设计了详细的医疗提示词模板,包含角色定义、功能范围、数据要求和交互规范 实现了基于MongoDB的对话记忆存储 封装了前后端交互的对话对象和Controller接口 函数调用功能: 演示了如何通过@Tool注解创建数学工具类 展示了AI自动判断并调用工具完成数

文章图片
#java#人工智能#开发语言
大数据之Flink(10) | 状态后端

MemoryStateBackend内存级的状态后端,会将键控状态作为内存中的对象进行管理,将它们存储在TaskManager的JVM堆上;而将checkpoint存储在JobManager的内存中。env.setStateBackend(new MemoryStateBackend())FsStateBackend将checkpoint存到远程的持久化文件系统(FileSystem)上。而对于本

#flink#大数据
    共 32 条
  • 1
  • 2
  • 3
  • 4
  • 请选择