自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 【无标题】

2026-04-30 10:39:05 227

原创 Spring Boot 3.x + Spring AI 实战:5分钟集成阿里通义千问 API,打造你的第一个 AI 应用

在当今 AI 技术飞速发展的时代,将大模型能力集成到 Java 应用中已成为后端开发者的必备技能。本文将手把手教你在 Spring Boot 3.x 项目中集成 Spring AI,实战调用阿里通义千问 API,让你 5 分钟打造出自己的第一个 AI 应用!Spring AI 是 Spring 官方推出的 AI 集成框架,提供了统一的 API 来对接各种大模型服务商,包括 OpenAI、Azure OpenAI、阿里云通义千问、百度文心一言等。

2026-04-29 11:04:33 222

原创 Spring Boot集成AI大模型实战:从0到1打造智能应用

最近在项目中尝试将AI大模型能力集成到Java后端服务,分享一些实战经验。

2026-04-28 20:48:52 114

原创 Spring Boot + Redis 实现接口防抖与限流实战指南

本文结合实战,讲解如何用Redis+Spring Boot实现一套灵活的接口保护机制。:接入Prometheus,监控限流触发次数## 五、总结通过。:Redis不可用时,自动放行请求,避免服务不可用4.

2026-04-28 10:48:14 95

原创 【MyBatis Plus 实战】快速入门与核心功能详解

MyBatis Plus通过大量的自动封装,大大提升了我们的开发效率。它提供的条件构造器、分页插件、自动填充、逻辑删除等功能,让CRUD变得非常简单。如果你正在使用MyBatis,不妨尝试一下MyBatis Plus,相信会给你带来惊喜!

2026-04-27 21:03:01 232

原创 Spring Boot + Redis 实战分布式锁:从入门到精通

但当应用部署到多节点时,每个节点都有独立的JVM进程,本地锁只能控制单个进程内的线程,无法协调多个进程之间的竞争。二、Redis实现分布式锁的原理Redis 之所以能实现分布式锁,主要依赖以下特性:SETNX 命令:SET if Not eXists,只有key不存在时才设置成功过期时间:防止锁永久占用,导致死锁唯一value:标识锁的持有者,支持安全释放最简单的实现public String tryLock(String key, String value, long expireTime) {

2026-04-27 10:38:44 218

原创 【Redis实战】分布式锁的N种实现方案对比与避坑指南

但如果是分布式部署,多个服务实例同时抢锁,JVM锁就失效了——因为每个实例都有自己的锁对象,彼此之间完全感知不到。分布式锁的核心目标:互斥性:同一时刻只能有一个客户端持有锁防死锁:即使客户端崩溃,锁也要能自动释放可重入:同一个客户端可以多次获取锁高性能:加锁/解锁操作要快二、方案一:SET NX EX(最简单粗暴)这是很多人第一次用Redis实现分布式锁的方式:public Boolean tryLock(String key, String value, long expireTime) {

2026-04-26 21:35:46 213

原创 Spring Boot 3.x 集成 AI 大模型实战指南

Spring Boot 3.x 与 Spring AI 的集成方式同步与流式对话的实现多模型支持的配置方法企业级应用的注意事项AI 大模型正在改变软件开发方式,掌握这些技能能让你的项目更具竞争力。赶紧动手试试吧!关注我,获取更多 Java & AI 技术干货!

2026-04-26 10:38:18 598

原创 Redis分布式锁实战:从理论到生产环境避坑指南

测试内容123获取锁,设置过期时间 30s 2. 由于某些原因(比如 GC),业务处理超过 30s 3. 锁自动过期,客户端 B 获取到锁 4. 客户端 A 业务处理完成,执行 unlock() —— 删的是 B 的锁!// 支持锁重入 lock1.lock();考虑这个场景: 1. 客户端 A 获取锁,设置过期时间 30s 2. 由于某些原因(比如 GC),业务处理超过 30s 3. 锁自动过期,客户端 B 获取到锁 4. 客户端 A 业务处理完成,执行 unlock() —— 删的是 B 的锁!

2026-04-25 10:42:10 340

原创 Spring Boot整合AI大模型实现智能问答系统实战

随着大语言模型的快速发展,AI能力已经变得触手可及。本文将分享如何基于Spring Boot框架,快速集成AI大模型能力,构建一个智能问答系统。使用Spring AI简化了与大模型交互的复杂度通过Redis实现会话历史管理,支持多轮对话代码结构清晰,易于扩展和维护完整源码已上传至GitHub,欢迎交流讨论!相关技术栈。

2026-04-24 21:06:15 116

原创 ThreadLocal 深度解析:从原理到实战

深入理解ThreadLocal的底层原理、常见内存泄漏坑点,以及用户会话、数据库连接、链路追踪等实战场景,带你彻底搞懂这个面试高频考点。

2026-04-24 16:29:01 364

原创 【Java实战】深入理解线程池核心参数与拒绝策略

线程池配置需要根据实际业务场景调优,关键是:有界队列、合理拒绝策略、完善监控。

2026-04-23 16:39:38 57

原创 Redis复习笔记(下)

单个key占用内存过大内存单线程IO多路复用。

2026-03-22 09:25:31 347

原创 Redis复习笔记(上)

Redis(Remote Dictionary Server)是一个特点:读写速度快(10万+ QPS)支持持久化支持多种数据结构支持分布式。

2026-03-20 20:41:41 361

原创 Spring Boot 常用注解总结

@SpringBootApplication👉 组合注解: ⭐👉 一句话:标识启动类 + 开启自动装配 + 扫描组件@Component👉 把类交给 Spring 管理👉 本质:都是 @Configuration👉 标识这是一个配置类(相当于 XML)@Beanpublic User user() {return new User();}👉 作用:把方法返回值交给 Spring 管理@Autowiredprivate UserService userS

2026-03-20 20:41:29 319

原创 Spring Boot 面试核心笔记

👉 一组依赖的集合(开箱即用)步骤:创建 starter 模块写自动配置类写使用条件注解控制加载👉Spring Boot 启动 = 创建容器 + 自动装配 + 启动 Web 服务器@Value。

2026-03-19 19:53:33 387

原创 三色标记算法

三色标记是 JVM 垃圾回收中用于判断对象是否存活的一种算法。

2026-03-19 14:24:46 74

原创 Elasticsearch 笔记

Elasticsearch 是一个基于倒排索引的分布式搜索引擎,通过分词器构建索引,实现高效全文检索。其核心包括索引、分片、倒排索引和 DSL 查询。写入和查询都依赖分布式架构,适合海量数据搜索场景。

2026-03-18 20:58:34 346

原创 JVM 整体面试总结

JVM =

2026-03-18 19:05:46 306

原创 算法150道做题顺序

两数之和有效字母异位词存在重复元素 哈希移动零删除排序数组中的重复项买卖股票的最佳时机盛最多水的容器三数之和。

2026-03-17 20:59:33 42

原创 Java 网络爬虫笔记

爬虫流程:请求 → 解析 → 存储难点:反爬 + 动态页面优化:并发 + 去重 + 限流核心能力:抓接口。

2026-03-17 11:40:02 1138

原创 计算机网络核心笔记

原因:防止失效连接请求。三次握手可以确认:客户端发送能力服务器接收能力双方通信正常。

2026-03-16 14:45:18 332

原创 接口 vs 抽象类 —— 设计动机

核心目的:代码复用 + 抽象公共逻辑提供一个父类模板,让子类继承并实现部分方法。

2026-03-14 21:29:34 237

原创 Socket 与 WebSocket 笔记

Socket 是操作系统提供的网络通信接口,用于建立 TCP/UDP 连接;WebSocket 是建立在 TCP(Socket) 之上的应用层协议,用于实现浏览器与服务器之间的实时双向通信。

2026-03-14 10:15:00 220

原创 手写Tomcat流程笔记

扫描Servlet类 → 获取@WebServlet路径 → 创建对象 → 存入Map。

2026-03-13 20:02:23 341

原创 JAVA基础二

自动回收,避免内存泄漏。没有任何引用指向的对象例如:u = null;//对象可以被GC回收程序员不用手动释放内存JVM自动管理。

2026-03-13 20:01:36 333

原创 BIO 与 NIO 区分

BIO:一个连接一个线程,线程会阻塞等待数据。NIO:一个线程通过 Selector 管理多个连接,谁有数据就处理谁。

2026-03-12 16:50:17 241

原创 Java 核心基础

特点:基本类型变量直接存储值存储在栈内存包括:类(如 、自定义类)接口(如 、)数组特点:变量存 对象地址对象本身存 堆内存Java虚拟机作用:解释执行 字节码实现 跨平台核心思想:写一次,到处运行JRE(Java Runtime Environment)Java运行环境包含:JVM + 核心类库作用:运行 Java 程序Java开发工具包包含:JRE + 开发工具常见工具:javac(编译)java(运行)javadocjarJDK > JRE > JVM3.

2026-03-12 16:01:35 233

原创 自用,各种小代码

ps -ef | grep "项目.jar" | grep -v grep | awk '{print $2}' | xargs kill -9。nohup java -jar /usr/local/项目.jar > /usr/local/llm_app.log 2>&1 &scp -i id_rsa "project路径" admin@服务器ip:/home/admin/mv -f /home/admin/项目.jar /usr/local/实时查看启动日志,确认是否有报错。把自己的项目上传到服务器。

2025-08-13 10:00:55 160

原创 java核心基础--泛型:让数据存储既灵活又安全

假设我们要写一个程序来装数据:这个盒子要求可以存整数、字符串,或者其他任何类型的数据。

2025-07-25 17:15:17 454

原创 Java 字符串核心知识:常量池、比较与拼接

在 Java 中,字符串(String)是我们日常开发中最常用的数据类型之一。想要熟练掌握字符串操作,理解字符串常量池、比较方式以及拼接原理是关键。今天就用简单的例子带大家搞懂这些核心知识点。

2025-07-20 22:44:54 347

原创 Java 核心基础:类与对象、static、this、final关键字

int age;// 成员变量:年龄// 创建3个Animal对象// 给Animal1、Animal2设置年龄// 输出年龄// 2// 3// 0我们可以看见,最后输出的时候,animal1,animal2,animal3分别输出2,3,0。很明显animal1和animal2各自拥有独立的,不同于animal的age变量。即使animal3未赋值,它也有默认的age,是0;类是 “模板”,定义了对象的结构:包含哪些属性(变量)和行为(方法)。例如Animal。

2025-07-20 11:03:29 718

原创 计算机中的数据存储:原码、反码与补码的解析

但是这时候发现二进制表达的数字长短不一样,这在电脑中不好存储,为了更高效地管理内存和加快处理速度,计算机采用了。我们知道-0和0是一个概念,因为0不分正负,这样是没有意义,同时也增加了计算机处理的复杂性,所以。在计算机中,当我们超出范围时,优先舍掉高位的数字,于是我们把1舍掉,得到了0,0000000。10和-10的和应该是0,但是计算出来是-20。八位中,第一位是符号位,0表示正数,1表示负数。,于是,诞生了反码,之前这种也就叫原码。同样的,我们再次计算上面10与-10的和。我们再来计算上面那个式子,

2025-07-17 21:58:01 279

原创 java简单仓库curd系统

商品名称:<input type="text" class="editName"></div><div>商品价格:<input type="text" class="pricetext"></div><div>商品名称:<input type="text" class="nametext">

2025-02-05 20:20:36 655 1

空空如也

空空如也

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

TA关注的人

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