- 博客(195)
- 收藏
- 关注
原创 【问题】本地启动springboot项目启动flowable引擎会提示数据库脚本错误,同事本地启动没有报错(MySQL表明大小写敏感参数)
本文从一个常见现象切入:建表、加字段、建索引时明明对象已存在,脚本却仍然重复执行并报错。文章指出根因在于 MySQL 的 lower_case_table_names 参数,先说明该参数 0、1、2 三种取值在存储与比较方式上的差异,再给出在 Linux 上把参数改为 1 的完整操作流程,包括确认现有表名大小写、全量备份、停库改配置、重建数据目录、启动排错(含 SELinux 上下文修复)以及修改 root 初始密码,帮助读者安全完成大小写不敏感配置的切换。
2026-10-28 20:27:07
168
原创 05.spring boot代码实现RAG
本文基于 Spring AI 与智谱 AI 的 Embedding、Chat 模型,完整演示了一套轻量级 RAG 实现方案。文章先说明文本向量化与余弦相似度检索的基本原理,再依次给出 pom 依赖、配置文件、相似度计算工具类、查找相似文本的 Service、文档向量化的手动切分与自动拆分两种实现,最后通过接口层和启动类把整条链路串起来,帮助读者快速跑通“文档向量化—相似度检索—大模型整理回答”的完整流程。
2026-10-26 12:35:47
169
原创 04.大模型是如何“查资料”并回答的:RAG 检索与生成原理详解
本文澄清了大模型“查资料”实为工程链路协作的常见误解,揭示RAG(检索增强生成)机制的核心流程:文档经解析、切分、向量化后存入数据库;用户提问经改写、混合检索与重排后,精选文本拼成Prompt,由模型基于上下文逐token生成回答。余弦相似度仅为向量检索中的一种度量方式,非决定性因素。真正影响答案质量的是切分策略、检索融合、重排精度与生成约束等多环节协同。
2026-10-26 12:35:40
410
原创 03.Spring AI Embedding 实战:从向量化原理到项目落地
Embedding(向量化)是指把文本、图片、音频等非结构化数据,通过模型映射为一段固定维度的浮点数向量。这段向量可以理解为数据在高维语义空间中的“坐标”,语义越接近的内容,其向量在空间中的距离也越近。在 Spring AI 中,Embedding 由接口统一抽象,核心方法返回一个float[]则支持批量向量化。不同模型输出的维度不同,例如常见的 1024 维、1536 维、3072 维等,使用时需要保证同一知识库内所有向量来自同一个模型,否则维度不一致会导致检索失败。
2026-10-25 17:26:27
91
原创 02.springboot项目对接国内模型实现对话聊天
SpringAI 实现了代码不变,只改配置和引入pom,就能更换对接的模型。。参考官网注意文档版本,点击页面中的 ··· 选择版本。目前内容已经更新到2.0.2,但是发现国内模型只支持deepseek。所以目前采用最新的1.1.8来讲解所有示例。
2026-10-25 16:33:42
88
原创 01.Spring AI 入门指南:核心特性、环境要求与快速上手
Spring AI 把大模型能力以 Spring 生态惯用的方式封装起来,核心价值在于统一抽象、自动配置和完整的 RAG 与工具调用支持。对于已经使用 Spring Boot 的团队来说,它显著降低了接入 AI 的门槛。环境上只需要 JDK 17、Spring Boot 3.2 及以上版本,再准备一个可用的模型服务与密钥,就可以开始第一个示例。建议从简单的对话接口入手,再逐步引入结构化输出、向量检索和工具调用,按业务需要演进。
2026-10-25 15:39:26
356
原创 LocalSend 局域网传文件(支持苹果手机):原理、使用方式与核心优势
LocalSend 用极简的设计解决了局域网文件传输这个高频痛点:免费开源、全平台覆盖、点对点直连、无需账号、速度跑满带宽。对于经常在多设备间倒腾文件的用户,它几乎是必备工具;对于注重隐私、不希望文件经过第三方服务器的用户,它也是一个可靠的选择。如果你还没试过,不妨在电脑和手机上各装一个,连上同一个 Wi-Fi,体验一下几秒钟传完一个安装包的畅快感。
2026-10-22 23:00:00
270
原创 把安卓平板变成电脑第二屏幕(扩展屏):局域网与外网方案全解析
把安卓平板变成 Windows 电脑的第二块屏幕,核心就是选对工具、配对好网络。局域网场景下,ExtenDesk 专注扩展屏、延迟低,是省心的选择;外网场景下,ToDesk 的穿透能力和多平台支持更占优势。预算有限还可以考虑 spacedesk、Deskreen 等免费方案。这些方案基本都不限制设备品牌和系统,一台闲置安卓平板加一台 Windows 电脑就能搭起来。建议先按自己的主要使用场景选一款试用,连接成功后再花几分钟调整显示排列和网络设置,体验会明显提升。
2026-10-22 18:51:19
355
原创 【问题】代理转发到后端使用request.getRequestURL()地址没有端口
访问链路:https://域名/chatbi/》http://域名:30083/chatbi》实际springboot服务 springboot服务中使用HttpServletRequest request.getRequestURL() 获取的地址是http://域名/chatbi。既不是原来https的url也不是http携带30083的url。
2026-10-12 15:20:35
122
原创 【问题】spring boot中是Java8 parallelStream 造成的RequestContextHolder.getRequestAttributes()为null
把任务扔到 ForkJoinPool 的子线程执行,,每个线程独立一份。
2026-09-21 10:04:29
151
原创 Rocky Linux 10.2 安装 PostgreSQL 15 完整教程
通过以上步骤,即可在 Rocky Linux 10.2 上完成 PostgreSQL 15 的安装、初始化和基本配置。后续可根据业务需要创建数据库、用户并调整性能参数。
2026-08-26 14:03:42
251
原创 【问题】IDEA 导入 Gradle 项目,sync Gradle changes 报错 connect time out 或 read time out。
项目中没有gradle相关版本的配置,把项目使用gradle 的 wrapper方式修改为本地安装模式。
2026-08-18 11:01:58
64
原创 【问题】Rocky Linux 10.2 安装MySQL依赖检测失败
libtirpc.so.3(TIRPC_0.3.0)(64bit) 被 mysql-community-server-8.4.11-1.el10.x86_64 需要。libtirpc.so.3(TIRPC_0.3.3)(64bit) 被 mysql-community-server-8.4.11-1.el10.x86_64 需要。libtirpc.so.3()(64bit) 被 mysql-community-server-8.4.11-1.el10.x86_64 需要。
2026-08-11 10:41:14
160
原创 CentOS 7.9 离线安装 Nginx 并配置openssl1.1.1
操作系统centos 7.9 ,openssl 1.1.1w,nginx 1.28.0。
2026-08-11 10:27:04
341
原创 VMware 安装 Rocky Linux 10.2 详细教程:从选择理由到网络配置
通过本教程,您已经完成了在 VMware 中安装 Rocky Linux 10.02 的全过程,并理解了选择 Rocky Linux 的原因及其与 CentOS 的传承关系。Rocky Linux 是 CentOS 的社区继任者,提供与 RHEL 的长期二进制兼容。VMware 安装过程包括虚拟机创建、分区、软件选择和用户配置。网络配置可通过图形界面或nmcli命令完成,确保系统能够访问互联网。安装后及时更新系统并安装必要工具,为后续使用打下基础。
2026-08-11 09:23:09
320
原创 纯小白导入前端项目搭建前端环境fnm、nodejs、yarn
本文详细介绍了 fnm(Fast Node Manager)在 Windows 环境下的完整安装与配置流程,包括 fnm 的安装、终端配置、常见问题解决,以及使用 fnm 管理 Node.js 版本、安装 yarn 和启动前端项目的完整步骤。文章重点解决了 fnm 安装后 PowerShell 脚本执行权限问题、Node.js 安装时的访问拒绝错误,并提供了 yarn 缓存目录配置和 vite 版本降级等实用技巧。
2026-07-28 19:12:50
226
原创 RocketMQ 4.9.8 集群简易安装教程:两主两从同步复制异步刷盘(CentOS 7.9)
上一篇文章较为复杂不太适合初学者,初学者学习集群安装可以看这篇文章。
2026-07-26 23:29:16
203
原创 RocketMQ 4.9.8 集群安装教程:两主两从同步复制异步刷盘(CentOS 7.9)
本教程将指导您在 CentOS 7.9(2009 版本)操作系统上,部署一个高可用的 RocketMQ 4.9.8 集群。我们采用经典的“两主两从”架构,并配置为同步复制(SYNC_MASTER)和异步刷盘(ASYNC_FLUSH),以在保证数据可靠性的同时,兼顾写入性能。我们可以在四台机器中的任意两台(例如 101 102 103)上启动 NameServer,以实现高可用。在规划 RocketMQ 集群时,NameServer 的部署数量是一个常见问题。在 102 节点上,编辑配置文件。
2026-07-26 22:43:10
281
原创 【问题】VmWare克隆多台机器后同时启动,总有一两台无法连接外网
因为克隆机器是将系统内容完全复制,但一些唯一标识在不同机器上必须不一样,所以需要重置。执行后就可以都正常联网。
2026-07-26 21:57:05
38
原创 【问题】The following artifacts could not be resolved: ring-cors:ring-cors:pom:0.1.5 (present, but unava
编译过程中,IDEA 弹窗一定要点击信任证书 Save as trusted。然后将包下的 _remote.repositories 和 .lastUpdated文件全部删除,再次执行 clean package命令。包已经下载下来,但是maven编译不通过提示上述错误。百度查询需要添加参数,但是并不好用。
2026-07-25 19:30:26
169
原创 【问题】atlas-2.1.0编译问题Could not find artifact org.apache.sqoop:sqoop:jar:1.4.6.2.3.99.0-195
有网友说还需要本地安装到maven仓库,这种方式太麻烦,我直接放到maven仓库后,把文件夹下对应的.lastupdated和_remote.repositories都删除。链接: https://pan.baidu.com/s/1nlFP1IYBHAozh-zEA1BGIQ?但是访问是504,找了下阿里镜像,清华镜像,maven官方仓库都下载不到包,所以找到包后,将包分享出来。sqoop相关包找了很多仓库已经下载不到了,可能是这个atlas版本太旧了。idea工具编译工程中遇到弹窗。
2026-07-25 19:23:53
205
原创 RocketMQ Dashboard 安装、编译与使用指南
RocketMQ Dashboard 是 Apache RocketMQ 官方提供的开源管理控制台,用于可视化监控和管理 RocketMQ 集群。它提供了集群概览、主题管理、消费者组管理、消息轨迹查询、运维监控等核心功能,极大地方便了开发者和运维人员对 RocketMQ 集群的日常管理和问题排查。
2026-07-25 19:06:32
294
原创 RocketMQ 4.9.8 单机安装指南(CentOS 7.9)
本文详细介绍了在 CentOS 7.9 系统上单机安装 RocketMQ 4.9.8 的完整步骤,包括环境准备、下载、配置、启动和验证。按照以上步骤操作,您应该能够成功搭建一个可用的 RocketMQ 单机环境,用于开发测试或学习。对于生产环境,请务必参考官方文档进行集群部署和高可用配置。
2026-07-25 18:45:57
290
原创 【问题】安装了jdk8,并没有手动配置环境变量,java -version也能成功打印
之前一直以为,安装 Java 时会自动配置环境变量,无需手动处理,平常开发过程中也确实如此,不再需要额外配置。但在一次编译源码项目的过程中遇到了错误:指向的路径是 JRE 而非 JDK。
2026-07-24 13:44:50
220
原创 17.Python 文件与目录操作完全指南:从 IO 流到常用方法
文件读写:使用open()函数配合不同模式('r', 'w', 'a', '+')资源管理:推荐使用with语句自动管理文件关闭路径操作os.path用于传统路径处理,pathlib提供更现代的面向对象接口文件操作os模块提供基础操作,shutil提供高级文件操作目录遍历os.walk()和用于递归遍历目录在实际开发中,建议优先使用pathlib(Python 3.4+)和with语句,它们能让代码更简洁、安全。
2026-07-24 13:28:17
236
原创 CentOS 7.9 安装 MySQL 8.3.0 (RPM Bundle) 全攻略:密码管理、冲突解决与故障处理
本文详细介绍了在 CentOS 7.9 上通过 RPM Bundle 安装 MySQL 8.3.0 的完整流程,重点解决了 MariaDB 冲突问题,明确了默认 root 密码的查找位置,提供了密码修改和忘记密码的恢复方法。按照步骤操作,即可顺利完成 MySQL 8.3.0 的部署与配置。
2026-07-22 14:04:43
207
原创 MySQL 修改密码策略详解:从基础到高级配置
MySQL 提供了完善的密码策略管理机制,从基础密码修改到高级安全策略,能够满足不同安全级别的需求。合理配置密码复杂度、过期时间和历史记录策略,结合双密码、随机密码等新特性,可以显著提升数据库的安全性。建议根据实际业务需求和安全规范,制定并实施适当的密码管理策略。
2026-07-22 13:29:50
322
原创 CentOS 7.9 系统下 Redis 5.0.4 单机安装与源码编译安装指南
本文详细介绍了在 CentOS 7.9 系统上通过源码编译安装 Redis 5.0.4 的完整步骤。从环境准备、源码下载、编译安装到配置服务,涵盖了单机部署的所有关键环节。Redis 5.0.4 作为稳定版本,适合大多数生产环境使用。安装完成后,建议根据实际需求调整配置参数,并实施适当的安全措施。
2026-07-21 18:48:14
215
1
原创 ZooKeeper 3.4.13 单机安装详解
Apache ZooKeeper 是一个分布式协调服务,广泛应用于 Dubbo、Kafka、HBase 等分布式系统中,负责配置管理、命名服务、分布式锁、集群管理等功能。本文以 CentOS 7 环境为例,详细介绍 ZooKeeper 3.4.13 单机版的安装与配置流程,适合初学者快速上手。本文详细介绍了 ZooKeeper 3.4.13 单机版的完整安装流程,涵盖环境准备、下载解压、配置编写、服务启动、客户端测试以及开机自启配置。
2026-07-21 18:34:20
201
原创 【问题】PostgreSQL数据库应用服务部署测试环境查不到数据
本文记录了一个数据库查询的疑难问题排查过程:本地和测试环境数据一致,本地服务能查到数据,但测试环境服务却查不到。通过对比SQL、检查配置、排查参数均未果,甚至大模型也给出了错误方向。最终发现是SQL中两张表只有一张拼接了schema,而本地schema为public(默认)导致查询正常,测试环境因schema不一致而查询失败。解决方案是在MyBatis XML中为所有表统一拼接schema。
2026-07-21 11:02:26
256
原创 【问题】springboot项目配置随机端口后启动报错[springProperty] java.lang.NumberFormatException: For input string: “ 900
仔细查看报错日志:ERROR in ch.qos.logback.core.joran.spi.Interpreter@14:91 - RuntimeException in Action for tag [springProperty] java.lang.NumberFormatException: For input string: " 9000",查看报错日志中的 " 9000",9000前面有一个空格,平时我们编码系统逗号后加个空格,但在配置文件中这么写不兼容,去掉空格后。再次点击就能启动成功。
2026-07-21 10:12:49
170
原创 IDEA中随机端口启动多个Spring Boot实例及常见问题解决
本文介绍了在 IntelliJ IDEA 中配置 Spring Boot 项目以随机端口启动多实例的两种方法:将。
2026-07-21 10:01:59
397
原创 16.Python异常处理全解析:从案例入门到自定义异常
通过继承Exception"""余额不足异常"""message = f"余额不足!当前余额:{balance},需要:{amount}"使用自定义异常try:print(f"取款失败:{e}")print(f"详细信息:余额={e.balance}, 请求={e.amount}")基础语法:try-except-else-finally四件套异常层级:理解内置异常的继承关系有助于精确捕获信息获取:通过traceback等工具获取详细错误信息主动抛出:使用raise在适当的时候引发异常。
2026-07-19 23:53:14
201
原创 15.Python第三方库安装全攻略:全局环境 vs 虚拟环境、镜像配置详解
全局环境(Global Environment)是指Python系统安装的默认环境。当你直接使用命令时,库会被安装到全局Python的目录中。虚拟环境(Virtual Environment)是一个独立的Python运行环境,可以隔离不同项目的依赖,避免版本冲突。始终使用虚拟环境进行项目开发,避免全局污染创建虚拟环境后立即激活,再安装依赖使用requirements.txt管理项目依赖配置国内镜像源加速下载,推荐清华或阿里云镜像定期更新依赖查看过期包备份环境。
2026-07-19 22:20:19
225
原创 14.Python模块与包完全指南:从定义到实战
本文系统讲解Python模块与包的核心概念。你将了解模块的定义、内容、分类(标准库、自定义、第三方)、命名规则、定义与测试方法。深入掌握模块的多种导入方式、搜索路径顺序以及__all__的特殊作用。进一步学习包的定义、导入方式、文件的作用,以及如何在全局环境和虚拟环境中安装第三方库。本文旨在为你构建清晰的模块化编程知识体系。目录摘要1. 什么是模块?2. 模块里可以放什么?3. 为什么要使用模块?4. Python模块的分类4.1 标准库模块(Built-in Modules)
2026-07-19 22:06:46
188
原创 13.Python 递归与高阶函数详解:从基础概念到实战应用
递归是一种编程技巧,指的是函数在其定义中直接或间接地调用自身的过程。简单来说,就是一个函数在自己内部调用自己。递归的思想来源于数学中的归纳法——把一个大问题逐步分解为规模更小、结构相同的子问题,直到子问题简单到可以直接求解。递归终止条件(基线条件):定义什么时候停止递归,防止无限循环。没有终止条件的递归会导致栈溢出。递归表达式(递归步骤):将原问题分解为更小的子问题,并通过调用自身来求解。递归的经典类比是俄罗斯套娃。
2026-07-19 20:48:13
345
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅