自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(84)
  • 资源 (1)
  • 收藏
  • 关注

原创 Java 封装、继承、多态

复习Java 封装、继承、多态

2026-04-12 13:29:17 196

原创 Lombok 包底层浅析

Lombok 是 Java 最常用的代码简化工具包,它能通过注解自动生成 getter、setter、构造方法、toString 等代码,不用手写重复代码!

2026-04-11 22:51:35 201

原创 git使用总结

入职前,重新系统的学习了一下git,进行总结!

2026-04-11 22:39:24 19

原创 遇到一个网络问题,求大佬解答!?

HTTPS 服务在建立 TCP 连接后立即被对端重置(RST),导致 SSL/TLS 握手失败,业务无法访问。

2026-04-10 22:46:30 28

原创 Nacos配置MySQL报错:Failed to configure a DataSource: ‘url‘ attribute is not specified...

Nacos配置MySQL报错:Failed to configure a DataSource: 'url' attribute is not specified...

2026-04-04 14:57:59 331

原创 SpringDoc OpenAPI 泛型返回值完美解决方案

SpringDoc OpenAPI 在处理泛型返回类型时,@Schema 注解标注在泛型类 R<T> 上,但没有使用 implementation 属性指定泛型的具体类型。SpringDoc 无法在运行时自动推断泛型参数 T 的实际类型,因此所有接口都显示相同的 data 结构(通常是 Object 或第一次解析到的类型)。

2026-03-30 16:50:18 339

原创 CRAG、Self-RAG、Adaptive RAG 经典论文总结概要

这三篇论文是 RAG 从 1.0(简单检索)迈向 2.0(智能反思与自适应)的奠基之作。作为 Java 开发者,可以将它们理解为在检索流程中加入了 “校验拦截器” 、 “逻辑判断分支” 和 “递归补偿机制”。

2026-03-29 22:25:34 368

原创 从聊天机器人到业务执行者:Agentic Orchestration 如何重构 Java 后端体系

Agentic Orchestration 是以大模型为决策大脑,通过编排能力赋予 AI 任务拆解、工具选择、执行规划与异常自愈的能力。

2026-03-29 22:19:06 430

原创 从“搜了就答”到“智能决策”:拥抱 RAG 2.0 时代的架构演进 ——Java 后端工程师视角下的 AI 应用工程化落地

2026 年,RAG 已经进化到了 2.0 阶段。它不再是简单的线性流程,而是一个具备反思(Reflection)、多步推理(Reasoning) 和 自我迭代 的智能代理架构。

2026-03-29 20:46:19 423

原创 后过滤召回塌陷:Redis 先召回 → ES 再过滤,如果全部被过滤掉怎么办?

后过滤召回塌陷:Redis 先召回 → ES 再过滤,如果全部被过滤掉怎么办?

2026-03-24 21:07:55 434

原创 四种向量检索架构对比:RedisSearch、ES 与混合架构选型分析

四种向量检索架构对比:RedisSearch、ES 与混合架构选型分析

2026-03-24 20:18:48 329

原创 滴滴AI场景设计题:司机智能接单助手

滴滴AI场景设计题:司机智能接单助手

2026-03-23 09:01:38 199

原创 CompletableFuture 与 Future 对比与实战示例

在 Java 异步编程中,`Future` 是早期用于获取异步任务执行结果的接口,但在实际复杂业务场景下存在明显缺陷。Java 8 推出的 `CompletableFuture` 实现了 `Future` 与 `CompletionStage` 接口,彻底解决了传统 `Future` 的痛点,支持流式调用、任务编排、异常处理、回调通知等强大能力,成为后端异步开发、高并发接口优化的核心工具。

2026-03-19 21:57:46 350

原创 AI 流式聊天接口实现(WebFlux+SSE)

在基于RAG的问答Agent系统中,流式返回是提升用户体验的关键——用户无需等待完整回答生成,就能实时看到内容滚动展示。以下是Spring Boot环境下,基于WebFlux+SSE(Server-Sent Events)实现的AI流式聊天接口完整实现、代码解析及落地注意事项,适配RedisSearch+ES检索上下文、大模型异步流式调用的核心场景。

2026-03-19 21:45:46 381

原创 Agent 与 RAG 效果评估::全自动化评估体系落地实践

在企业级大模型落地中,基于RAG的问答Agent已经成为标配,但长期以来有两个痛点一直困扰着工程与算法团队:一是问答效果怎么科学评估,二是RAG本身检索质量怎么量化,三是人工抽检成本太高无法规模化。很多人容易把“问答Agent评估”和“RAG效果评估”混为一谈,实际上两者职责不同、指标不同、评估逻辑完全不一样。本文就把两套评估体系讲清楚,并给出一套可直接落地的LLM-as-Judge自动化验证流程,告别人工逐条判题。

2026-03-19 20:58:40 476

原创 从对话到执行:OpenClaw 与 MCP 协议深度解析

在 AI Agent 的发展历程中,早期的架构(LLM + Memory + Planning + Tool + Action)解决了“如何思考”的问题。然而,如何让 Agent 在复杂的本地环境安全、标准、自主地“干活”,则是 OpenClaw框架与 MCP 协议共同解决的核心命题。

2026-03-19 16:26:18 477

原创 面试官必问:令牌桶(Token Bucket)原理与Java实战详解

在高并发系统设计中,限流是保护系统稳定性的“第一道闸门”。我们之前聊过缓存三剑客,其中**限流**是核心手段之一。在众多限流算法中,令牌桶算法因其支持突发流量和流量平滑*的特性,成为了企业生产环境(如网关层、API接口)的首选方案。本文将从底层原理、代码实现、企业级落地方案三个维度,彻底搞懂令牌桶。

2026-03-19 11:53:50 426

原创 FST = DFA + 输出映射 + 压缩能力

理解“FST = DFA + 输出映射 + 压缩能力”这个核心公式,本质是要拆解 FST(有限状态转换器)在 DFA(确定有限自动机)基础上的两大核心扩展——输出映射和压缩能力。

2026-03-16 17:40:34 301

原创 RAG 检索后提示词工程全攻略:从结构、约束到示例,一篇吃透上线级写法

RAG 检索后提示词工程全攻略:从结构、约束到示例,一篇吃透上线级写法。

2026-03-16 17:18:53 674

原创 深度解析HNSW:向量检索的“性能王者”(附Java实战代码)

在向量检索成为RAG、推荐系统、图像检索核心能力的今天,HNSW(Hierarchical Navigable Small Worlds,分层可导航小世界)凭借“高召回+低延迟”的特性,成为工业界最主流的近似最近邻(ANN)算法。本文将从原理、核心参数、Java实战(原生+RedisSearch集成)三个维度,彻底讲透HNSW的落地逻辑。

2026-03-16 16:51:11 503 1

原创 深入理解 float32(单精度浮点数)转 float16(半精度浮点数)的底层原理

深入理解 float32(单精度浮点数)转 float16(半精度浮点数)的底层原理。

2026-03-16 16:05:57 461

原创 RedisSearch 和 Elasticsearch 的 HNSW向量索引对比

RedisSearch 和 Elasticsearch 的 HNSW向量索引对比。

2026-03-15 21:47:17 385

原创 数据库索引为什么不选择跳表(Skip List)作为核心索引结构

数据库索引通常不选择跳表(Skip List)作为核心索引结构,主要是因为在磁盘存储、范围查询、空间利用率、稳定性等方面,跳表不如 B+Tree。这也是为什么绝大多数数据库(如 MySQL、PostgreSQL、Oracle Database)的主索引结构都是 B+Tree。

2026-03-15 21:31:44 204

原创 新手入门 Elasticsearch:从文档操作到底层数据结构,一文吃透核心逻辑

在学习 Elasticsearch时,很多新手都会经历一个过程:能写 API,但不知道 ES 为什么这么设计。比如:文档到底怎么写进去?为什么更新不是直接修改?Refresh / Flush 到底区别是什么?跳表、FST、倒排索引各干什么?ES 和数据库本质差异在哪?本文从文档操作 → 分布式机制 → Lucene底层结构一步步拆解,用通俗语言 + 真实实现逻辑,帮你建立 正确的 ES 概念。

2026-03-15 21:29:48 329

原创 美团Leaf发号器

美团Leaf是美团开源的分布式ID生成服务,核心提供号段模式(Leaf-segment)与雪花算法模式(Leaf-snowflake)两种方案,兼顾全局唯一、高可用、高性能。

2026-03-15 09:25:29 323

原创 RPC超时原因

RPC 超时,就 2 个方向:上游问题 + 下游问题+中间链路问题。业务本身要 500ms,你超时只设 200ms,必超时。FullGC 一卡 1~2 秒,RPC 还没发就超时了。上游线程不够用,请求发不出去,直接超时。下游忙不过来,请求排队,排到超时。下游 FullGC,整个服务卡住。二、下游(服务提供方)原因。网络抖动、防火墙、网关限流。注册中心问题(Nacos)一、上游(调用方)原因。直接连不上 = 超时。◦ 调用第三方接口慢。◦ Redis 阻塞。→ 接口一直不返回。

2026-03-13 17:36:03 119

原创 MySQL进阶实战:精油功效筛选场景下的窗口函数与多条件过滤优化

在业务开发中,我们经常遇到“多条件筛选+统计排序”的场景,比如根据多个功效名称筛选精油、按精油关联的功效总数(入度)排序。本文结合“精油-功效关联查询”的真实业务场景,拆解MySQL中**窗口函数、条件统计、GROUP BY/HAVING、JOIN关联**等核心知识点,同时分享性能优化和鲁棒性设计的实战技巧。

2026-03-12 22:11:06 219

原创 解决Spring Boot集成MySQL报错:Unsupported character encoding ‘utf8mb4‘ 及JDBC URL参数全解析

在基于Spring Boot开发传统业务服务(如数据导入、CURD操作)时,MySQL数据源配置是基础且关键的环节。近期遇到了「Unsupported character encoding 'utf8mb4'」的经典报错,本文将从问题定位、解决方案、JDBC URL参数解析三个维度,完整梳理MySQL数据源配置的最佳实践。

2026-03-12 16:15:24 347

原创 SpringBoot3 + MyBatis-Plus + MySQL + Swagger最基本配置文件

SpringBoot3 + MyBatis-Plus + MySQL + Swagger 的yml最基本配置写法

2026-03-12 14:27:18 237

原创 基于DFA的敏感词检测

DFA(Deterministic Finite Automaton),中文叫确定有限自动机,是一种高效的字符串匹配算法。

2026-03-02 15:57:41 657

原创 Java单例模式:饿汉、懒汉、DCL三种实现及最佳实践

单例模式是Java设计模式中最基础也最常用的创建型模式,核心目标是**保证一个类在程序运行期间只有一个实例**,并提供全局访问点。本文将详细拆解三种经典单例实现方式(饿汉式、懒汉式、双重校验锁),结合代码示例分析各自的优缺点与适用场景。

2026-03-02 00:45:03 865

原创 向量检索全链路:距离度量、搜索算法与结果重排

本文面向后端、AI 及 RAG 开发者,拆解向量检索全链路的三大核心模块:距离度量(怎么判断“相似”)、ANN 搜索算法(怎么快速找相似)、结果重排(怎么让结果更有用),兼顾理论严谨性与工业界实用性,可直接用于技术分享或开发参考。

2026-02-27 20:13:29 835

原创 RAG分块主流+前沿方法全解析

在构建RAG应用程序的整个流程中,拆分/分块是最具挑战性的环节之一,它显著影响检索效果。目前还没有通用的方法可以明确指出哪一种分块策略最为有效。不同的使用场景和数据类型都会影响分块策略的选择。因此对主流和前沿分块方法进行了整理,希望为开发者落地提供清晰、可直接复用的选型与实现参考。

2026-02-25 18:01:11 687

原创 LangChain4j对接通义千问404问题,原生API与兼容接口不可混用

LangChain4j对接通义千问404问题,原生API与兼容接口不可混用

2026-02-06 16:27:55 928

原创 PostgreSQL 16 中文分词插件 zhparser 在 Windows 11 上的编译与安装

PostgreSQL 16 中文分词插件 zhparser(Windows 11 环境)完整编译安装。

2026-02-05 23:58:34 956

原创 避坑指南:LangChain4j 集成 pgvector 时的字段名陷阱

LangChain4j 的 PgVectorEmbeddingStore 驱动采用了“约定优于配置”的设计,其内部 SQL 语句硬编码了字段名。

2026-01-26 14:03:09 624

原创 一个小问题:Swagger 不显示 VO,Swagger 泛型丢失

一个小问题:Swagger 不显示 VO,Swagger 泛型丢失

2026-01-23 19:56:08 408

原创 pgvector 源码手动编译,并解决向量引擎的兼容性问题

pgvector 源码手动编译,并解决向量引擎的兼容性问题(PostgreSQL 16)

2026-01-22 12:27:12 395

原创 Nginx配置学习

Nginx配置学习

2026-01-21 17:55:39 634

原创 MinIO通过Nginx反向代理的问题初步总结

MinIO通过Nginx反向代理的问题初步总结

2026-01-21 16:00:53 928

PostgreSQL 16 pgvector编译后文件(可直接copy使用)

为了让PostgreSQL 16支持向量相似度搜索,需要给PostgreSQL 16安装支持向量相似度搜索的插件。 pgvector 官方提供了源码,但没有releases版本,需要自己编译。 这些文件帮助你在Windows PostgreSQL 16 安装pgvector扩展时,就不需要再次编译了。 只需要像“打补丁”一样,将这几个文件拷贝到 PostgreSQL 的对应安装目录即可。

2026-01-22

包含haarcascade_frontalface_default.xml等所有xml文件

包含haarcascade_frontalface_default.xml等所有xml文件。

2020-07-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除