- 博客(559)
- 资源 (8)
- 收藏
- 关注
原创 Spring boot 4 搞懂MyBatis-Plus的用法
[MyBatis-Plus](https://github.com/baomidou/mybatis-plus) 是一个 [MyBatis](https://www.mybatis.org/mybatis-3/) 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生本文针对Spring boot 4如何集成MyBatis-Plus进行梳理汇总
2025-12-30 23:00:00
361
原创 Spring boot 4 搞懂 Spring Boot 核心启动流程
本文根据Spring boot 3/4的源代码,针对Spring Boot 核心启动流程进行了总结梳理。Spring Boot 3/4 的启动核心在于自动化配置与事件驱动。它通过` SpringApplication.run() `入口,利用 `spring.factories`、`AutoConfiguration`、`SPI`、`AOT`等加载扩展点。流程历经环境准备、容器刷新(含自动配置与条件化装配)、内嵌Web服务器启动,最后通过 `Runner `回调完成就绪,全程由事件发布-监听机制串联。
2025-12-30 20:30:00
658
原创 Spring Boot 4 如何使用Sentinel进行限流-II【基于Sentinel Spring MVC Adapter实现】
Sentinel 通过 **拦截器 + 资源埋点 + 规则配置** 三步完成对 Servlet 6.x 的限流适配。核心优势在于:- **无侵入性**:通过配置自动拦截请求,无需修改业务代码。- **灵活性**:支持自定义资源名、调用方解析和阻断响应。【自定义资源名通过UrlCleaner实现】- **异步兼容**:适配 Servlet 6.x 的异步处理模型,保障高并发稳定性。与 Spring MVC 的 `HandlerInterceptor` 集成,`SentinelWebIntercept
2025-12-27 23:03:41
745
原创 Spring Boot 4 如何使用Sentinel进行限流?
随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel 是面向分布式、多语言异构化服务架构的流量治理组件,主要以流量为切入点,从流量路由、流量控制、流量整形、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障微服务的稳定性。Sentinel 社区正在将流量治理相关标准抽出到 [OpenSergo spec](https://opensergo.io/zh-cn/) 中,Sentinel 作为流量治理标准实现
2025-12-26 23:22:30
996
原创 Spring AI 深度重构 renren-security,基于 Java 21 虚拟线程打造极致高并发脚手架
renren-security 一直是我心中最优秀的轻量级 Java 快速开发平台之一。它基于 Spring Boot、Shiro 和 Vue3 构建,凭借“极低门槛、拿来即用”的特性,成为了无数开发者交付项目的利器。然而,随着 Spring Boot 4.0 的正式发布以及 Java 21 成为新的事实标准,原有技术栈在高并发、低延迟的现代应用需求下面临显著瓶颈。为了将这套经典的权限系统带入现代 Java 时代,基于 renren-security 5.5.0 版本,独自完成这次深度的技术重构
2025-12-24 19:30:00
845
原创 Spring-AI RAG 如何提高召回率?
在构建 RAG(检索增强生成)系统时,“召回率”(Recall)决定了系统能否从海量知识库中把“相关的资料”全都找出来。如果召回率低,哪怕你的大模型再厉害,也是“巧妇难为无米之炊”。本文针对RAG中如何提高召回率的理论 及落地实践进行详细讲解
2025-12-23 22:30:00
1831
原创 Spring-AI: AI大模型 就业岗位全景图,挑选适合自己的
大模型行业已经从早期的“百模大战”逐渐走向分层细化,不同岗位的技术壁垒、薪资天花板和职业前景差异巨大。为了让你更直观地了解这个生态,整理了一份 “难度从极高到低”的岗位全景图,并对核心岗位进行了详细拆解。
2025-12-23 19:30:00
908
原创 Spring Boot 4 & JAVA 21 学习--迁移指南 Migration Guide
作为 Spring Boot 3.x 之后的首个大版本更新,Spring Boot 4.0 基于 Spring Framework 7.0、Jakarta EE 11 和 Java 17+(推荐 Java 21 或 25),带来了模块化架构重构、虚拟线程原生支持、HTTP 服务客户端自动配置等重大变化。本文带你学习如何将项目迁移至Spring Boot 4
2025-12-21 21:20:08
611
2
原创 Spring-AI WebClient 和 RestClient 用法解读
在 Spring 生态(特别是 Spring 6+)中,WebClient 和 RestClient 都是用来发起 HTTP 请求的客户端工具,它们正在逐步取代老旧的 RestTemplate。简单来说,WebClient 是为了高性能和未来的响应式架构而生,而 RestClient 是为了让传统的同步代码写起来更优雅、更简洁。
2025-12-12 18:02:03
101
原创 JAVA JDK/JVM如何选择? 你还在用Oracle JDK嘛?
在 2025 年的今天,对于大多数开发者和企业来说,选择 Liberica、Adoptium (Temurin) 或基于 OpenJDK 的发行版,而不选 Oracle JDK,主要集中在“钱”、“省心”和“特定优化”这三个核心维度。简单来说,Oracle JDK 现在更像是一个卖给大企业的“商业服务产品”,而 OpenJDK 生态则是“免费且强大的社区标准”。目前有免费、开源、功能一样强且经过大厂验证的“精装版 OpenJDK”,为什么要选择Oracle jdk?
2025-12-12 15:54:43
136
原创 Spring-AI Tool Calling 过程中字符串与对象间的转换
在 Spring AI 的 Tool Calling 过程中,字符串与对象之间的转换主要发生在数据进入 Java 方法之前(反序列化/入参转换)和数据返回给 LLM 之前(序列化/结果转换)两个阶段另外就是给LLM提供所能使用工具转换为 LLM 能识别的 `ToolDefinition` 对象
2025-12-08 17:58:53
773
原创 Spring-AI ETL Pipeline讲解
Spring AI 的 ETL(Extract, Transform, Load)框架是构建 RAG(检索增强生成)应用的核心组件,帮助你将原始数据(如 PDF、TXT、HTML 等)处理成 AI 模型可以理解的向量格式.提取、转换和加载(ETL)框架在检索增强生成(RAG)中充当数据处理的骨干.ETL管道编排从原始数据源到结构化向量存储的流,确保数据以最佳格式供AI模型检索。
2025-12-08 11:00:45
885
原创 Spring-AI 利用KeywordMetadataEnricher & SummaryMetadataEnricher 构建文本智能元数据
在构建基于Spring AI的RAG(检索增强生成)应用时,数据的质量直接决定了回答的智商。RAG时,不仅需要原始文本,还需要文本的上下文摘要或核心关键词来辅助检索和生成。Spring AI提供的ETL Pipeline模块中,KeywordMetadataEnricher和SummaryMetadataEnricher正是为此而生。它们利用大模型的能力,生成文件的核心关键词及摘要信息。
2025-12-07 15:37:45
394
原创 Spring-AI 利用Recursive Advisors如何构建可观察的循环处理链?
在构建AI应用时,常常需要让模型反复执行某些操作,比如以下操作:循环调用工具直到没有更多工具需要调用验证结构化输出并在验证失败时重试传统的做法是将这些逻辑写在模型内部,但这会让调试和监控变得困难。Spring AI的Recursive Advisor(递归Advisors)正是为了解决这个问题而设计的——它将这些循环逻辑移到了可观察、可拦截的Advisor链中,让AI应用的开发和调试更加透明和可控。
2025-12-07 09:54:46
721
原创 Spring-AI Advisors 体系框架与实战
在构建AI应用时,常常需要在模型调用前后执行一些`通用逻辑`,例如:记录日志、管理对话上下文、进行安全审查、或者注入额外的知识库信息。如果把这些逻辑都写在业务代码里,不仅会造成代码混乱,也难以复用和维护。Spring AI 框架提供了一个`优雅的解决方案——Advisors`。它借鉴了 Spring 经典的 `AOP(面向切面编程)思想`,让你可以像“插件”一样,将这些`横切关注点(Cross-Cutting Concerns)`从核心业务逻辑中剥离出来,实现高度`可扩展`和`可定制`的AI应用。
2025-12-06 23:11:38
547
原创 Spring-AI 如何玩转ChatClient?
在构建AI应用时,单一模型往往难以满足多样化的业务需求。Spring AI的ChatClient提供了优雅的解决方案,支持在同一应用中灵活使用多个ChatModel。ChatClient提供了一个fluent API 来与AI模型进行通信。它支持同步和流式编程模型。 将深入探讨如何在Spring Boot应用中配置和使用多个ChatModel,实现模型的动态选择与组合,如何深入使用ChatClient进行AI应用开发。
2025-12-06 13:15:37
740
原创 Spring-AI Moderation Model为何物?
Moderation Model 是一个专门用于**内容审核(Content Moderation)**的 AI 工具。它能自动分析你提供的文本,并判断其中是否包含违反其使用政策的敏感或有害内容。在当今这个用户生成内容(UGC)爆炸式增长的时代,从社交媒体评论到AI生成的回答,确保平台内容的合规与安全已成为开发者不可回避的责任。使用Moderation Model 可以方便的审核模型的输入和输出,识别有有害或敏感的内容。
2025-12-05 21:29:27
380
原创 Spring-AI Prompts详细解读
Prompt指导AI模型生成特定输出的输入。这些Prompt的设计和措辞显著影响模型的响应.投入时间和精力设计深思熟虑的Prompt可以极大地改善AI的结果.特别是随着人工智能技术的快速发展,如何最有效地利用Prompt是一个持续的挑战
2025-12-05 18:09:14
996
原创 Spring-AI如何支持多模态输入
目前多模态LLM已经出现,如OpenAI’s GPT-4o , Google’s Vertex AI Gemini 1.5, Anthropic’s Claude3 和开源的Llama3.2。这些模型能接受多种输入,包括文本、图像、音频和视频,并通过整合这些输入生成文本响应**多模态**是指模型能够**同时理解和处理**来自各种来源的信息,包括文本、图像、音频和其他数据格式本文讲解Spring-AI如何支持多模态输入
2025-11-30 17:54:46
323
原创 Spring-AI 如何使用Structured Output Converter将LLM输出转换为结构化数据
为什么需要结构化输出?Spring AI结构化输出转换器帮助将LLM输出转换为结构化格式。- 下游应用程序需要llm生成结构化输出,以便于进行解析- 将llm生成结果快速转换为数据类型,如JSON、XML或Java类,这些数据类型可以传递给其他应用程序函数和方法
2025-11-29 23:24:37
1055
1
原创 postgresql数据库pg_trgm & pgvector 使用教程
pg_trgm 是 PostgreSQL 的一个扩展模块,提供了基于 trigram(3-gram)相似度的**文本搜索**功能。它可以通过计算字符串之间的相似度来进行快速、模糊匹配的查询。这种功能在需要进行模糊搜索、字符串相似性比较等场景中非常有用。pgvector 是一个开源的 PostgreSQL 扩展,为PostgreSQL添加了对向量相似性搜索的支持,使得在 PostgreSQL中存储和查询向量数据变得可能
2025-09-17 16:18:08
228
原创 Spark NLP: 最先进的自然语言处理和LLM库
Spark NLP 是由 JohnSnowLabs 开发的一款基于 Apache Spark 的自然语言处理库。它支持分布式计算,能够高效处理大规模文本数据,适用于各种 NLP 任务。Spark NLP 提供了丰富的预训练模型,涵盖分词、词性标注、命名实体识别(NER)、文本分类、情感分析等任务,尤其在医疗和金融领域有广泛应用。
2025-09-17 12:14:28
678
原创 ClickHouse 25.3 json列类型使用示例
JSON已经成为现代数据系统中处理半结构化和非结构化数据的通用语言。无论是在日志记录和可观察性场景、实时数据流、移动应用存储还是机器学习管道中,JSON的灵活结构使其成为跨分布式系统捕获和传输数据的首选格式。从clickhouse 25.3版本,在生产中已经可以使用JSON列类型
2025-06-08 10:29:24
1418
原创 如何构建一个提供LLM运行环境的镜像
如果想在本地搭建LLM的运行环境,使用镜像是一个很好的选择本文提供基于python 3.10版本,使用poetry管理依赖,快速搭建LLM运行环境的镜像的脚本。
2025-04-10 09:40:40
152
原创 Trio:快速掌握Python并发编程的神器
Trio 是一个友好的 Python 库,用于异步并发和 I/O。它提供了一种简单且强大的方式来编写并发程序。本文将介绍如何使用 Trio 快速开发并发应用,包括与 Python 原生 async/await/coroutine 的区别、Trio 的优劣势、如何开发多任务并发的后端、如何开发多任务并发的 WEB 后端以及使用 Trio 的注意事项等。
2025-03-29 19:42:20
1188
原创 使用 Docker Compose 的 COMPOSE_PROFILES 变量:模块化你的应用部署
利用 Docker Compose 的 COMPOSE_PROFILES 环境变量及其 profiles 功能,开发者可以更加灵活和高效地管理复杂的应用部署。无论是为了简化开发流程还是优化生产环境的部署策略,这个特性都提供了一种优雅的解决方案。
2025-03-25 10:23:12
1577
原创 2025-工具集合整理
Docker Image Puller 是一个方便的工具,用于从 Docker 仓库拉取镜像,支持国内镜像源加速和多架构支持。该工具采用 MIT 许可证,开放源代码,方便用户根据需要进行定制和扩展。TikTok 发布/喜欢/合辑/直播/视频/图集/音乐;easyexcel作者最新升级版本, 快速、简洁、解决大文件内存溢出的java处理Excel工具。
2025-02-02 21:44:13
698
原创 AI Agent相关的设计图
LLM Agent 是一个基于大型语言模型的智能代理,能够执行复杂的任务。它通常结合了多种工具和API,以完成特定的目标。LLM Agent 可以根据上下文动态调整其行为,并且能够处理多步骤的任务。
2025-01-26 11:49:50
599
原创 2024年年终看LLM的发展方向
如今的大模型已经能够满足95%用户的需求,涵盖信息抽取、方案设计、表格生成、简单代码编写、简单问答、简单服务调用等领域,这95%的需求大多是简单任务,对模型的能力要求不高。因为大多数的用户日常并不需要模型具备复杂的逻辑推理能力。剩下5%涉及复杂逻辑推理的需求,隐藏着AGI的技术瓶颈,代表着以o1为典型的新技术范式,但需要投入天价的算力本文回顾2024年LLM的发展记录及针对2025年LLM发展方向的展望。
2024-12-31 18:10:23
1595
原创 springboot3如何集成knife4j 4.x版本及如何进行API注解
- knife4j是为**Java MVC框架集成Swagger生成Api文档的增强解决方案**, 取名knife4j是希望她能像一把匕首一样小巧,轻量,并且功能强悍!- 本文提供springboot3如何集成knife4j 4.x版本及如何进行API注解
2024-11-23 17:39:15
1122
原创 深入理解 Spring Boot 的 WebApplicationType
在 Spring Boot 应用程序启动过程中,WebApplicationType 是一个重要的概念,它决定了应用程序是以 Web 应用程序的形式运行还是以非 Web 应用程序的形式运行。本文将详细探讨 WebApplicationType 的工作机制及其在实际项目中的应用。
2024-11-23 17:15:55
860
转载 Word模板引擎poi-tl(poi template language)使用入门指南
Word模板引擎poi-tl(poi template language)使用入门指南
2024-10-16 10:05:38
1641
原创 如何使用PSTools工具集中的PSExec修改注册表信息,解决某些注册表项无法删除的问题
如何使用PSTools工具集中的PSExec修改注册表信息,解决某些注册表项无法删除的问题
2024-10-08 19:40:49
1364
原创 FastAPI--如何自定义Docs UI,包括多个APP、静态资源、元数据等
FastAPI--如何自定义Docs UI,包括多个APP、静态资源、元数据等
2024-09-17 13:19:54
848
HBase在搜索网页库上的应用_360.pdf
2013-07-28
CSOP 2023北京站-PPT
2023-06-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅