-
Agent Skills:给 AI 智能体装上"技能包"
一个 Markdown 文件就能让 AI 智能体学会新技能——这就是 Agent Skills 正在改变 AI 开发方式的故事。 前言你有没有遇到过这样的情况:每次和 AI 助手对话,都得重复解释”我们团队的 commit message 格式是 conventional commits”、”每个 PR 合并前必须过安全检查清单”、”代码风格按照我们的 ESLint 配置来”。说一遍还行... -
IDEA 2026.1 通过 ACP 接入 Claude Code
IDEA通过ACP接入ClaudeCode有一段时间了,虽然使用终端功能更加强大一点,当然我也考虑过一些插件,比如CCGUI,ClaudeCode官方的 JetBrains 插件 ,但总是感觉在IDEA里用的舒服,这几天还将IDEA从2025.3更新到了2026.1,遇到了一些问题,今天在这里记录一下。 什么是ACPACP (Agent Client Protocol) 是一个开放协议,用于... -
git基本使用
git有什么用如果你使用Word写过长篇大论,那你一定有这样的经历: 想删除一个段落,又怕将来想恢复找不回来怎么办?有办法,先把当前文件“另存为……”一个新的Word文件,再接着改,改到一定程度,再“另存为……”一个新文件,这样一直改下去,最后你的文档目录变得杂乱不堪。 过了一周,你想找回被删除的文字,但是已经记不清删除前保存在哪个文件里了,只好一个一个文件去找,真麻烦。 看着一堆乱七八糟的... -
Java序列化详解
如果我们需要持久化 Java 对象,比如将 Java 对象保存在文件中,或者在网络传输 Java 对象,这些场景都需要用到序列化。序列化需要使用到序列化器 在Java中,Serializer(序列化器)是一个广义的概念,指的是将对象状态转换为可存储或可传输格式的过程的工具或组件。它并不是特指某一个框架,而是一种设计模式或功能,可以由不同的库或框架提供。 Java提供了内置的序列化机制(实现j... -
从JVM的内存结构出发,探究Java的值传递
1.Java中只有值传递相较于其他程序设计语言(比如 C++、 Pascal)提供的两种参数传递的方式,在 Java 中只有值传递。 值传递:方法接收的是实参值的拷贝,会创建副本。 引用传递:方法接收的直接是实参的地址,而不是实参内的值,这就是指针,此时形参就是实参,对形参的任何修改都会反应到实参,包括重新赋值。 2.一段Java程序是如何运行的在讨论Java的值传递之前,先来看看一段J... -
JMM及其相关
Java 内存模型(Java Memory Model,简称 JMM)是 Java 并发编程的基础。它不是真实存在的物理内存布局,而是一套由 Java 虚拟机(JVM)定义的规范和协议。 JMM 决定了一个线程对共享变量的写入何时对另一个线程可见,旨在屏蔽硬件和操作系统的内存访问差异,实现 Java 程序在各种平台下一致的并发行为。 1. 为什么需要 JMM?在现代计算机体系中,为了弥补 C... -
Redis中缓存的穿透,击穿,雪崩
1. 缓存穿透现象: 指查询一个根本不存在的数据。缓存中没有,数据库中也没有。由于数据库里查不到,也就没法写回缓存,导致每次请求这个“不存在”的数据都要去冲击数据库。 诱因: 恶意攻击(故意查询不存在的 ID)或业务逻辑失误。 后果: 数据库压力激增,甚至崩溃。 解决方案: 布隆过滤器 (Bloom Filter): 在缓存之前增加一个屏障,记录所有可能存在的 Key。如果布隆过滤器判...
1