<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Dustmicro的博客]]></title><description><![CDATA[一个执着的java人]]></description><link>https://blog.youkuaiyun.com/Dustmicro</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Dustmicro]]></copyright><item><title><![CDATA[记忆力机制]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/159434026</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/159434026</guid><author>Dustmicro</author><pubDate>Tue, 24 Mar 2026 20:06:40 +0800</pubDate><description><![CDATA[本文系统分析了AI技术中记忆机制的演进历程：从AI应用的临时会话缓存（如豆包），到AI Agent的持久化向量库记忆（如扣子平台），再到OpenClaw开创的三层文件驱动记忆架构（L0即时上下文、L1日常日志、L2核心MEMORY.md）。OpenClaw通过本地Markdown文件实现了完全透明、可编辑、跨会话的长期记忆，支持自动写入和关键词检索，在保证数据可控的同时解决了传统AI记忆黑盒问题。这种记忆机制的演进反映了AI从简单对话工具向具有稳定认知能力的智能体的转变趋势。]]></description><category></category></item><item><title><![CDATA[RAG 系统 “检索 - 筛选 - 生成” 完整流程]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/154919507</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/154919507</guid><author>Dustmicro</author><pubDate>Sun, 16 Nov 2025 23:20:54 +0800</pubDate><description><![CDATA[本文档详细解析RAG（检索增强生成）系统的工作流程，从用户提问到最终回答分为五个关键步骤：提问优化（标准化问题表述）、混合检索（结合语义与关键词匹配获取候选片段）、筛选重排（去除冗余、排序相关片段）、增强输入构建（组合问题、片段与提示词）和模型生成（整合信息形成连贯回答）。以&quot;LLM训练数据核心条件&quot;为例，展示了系统如何通过多轮处理将原始知识片段转化为精准回答。该系统设计旨在保证回答既基于知识库内容，又具备良好的逻辑连贯性，适用于知识库搭建和RAG优化场景。]]></description><category></category></item><item><title><![CDATA[智能体知识库核心技术解析与实践指南——从文件处理到智能输出的全链路架构v1.2]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/154919331</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/154919331</guid><author>Dustmicro</author><pubDate>Sun, 16 Nov 2025 23:15:23 +0800</pubDate><description><![CDATA[在智能体系统中，知识库扮演着举足轻重的角色，堪称智能体的 “领域大脑”。它负责存储、处理和检索结构化与非结构化数据，为智能体的决策和响应提供坚实的知识基础。
智能体知识库的核心价值在于，为智能体提供领域专属的知识支撑（区别于大模型预训练），确保回答的准确性、逻辑性和数据溯源能力。在企业私有化部署场景中，它需满足严格的数据安全要求，防止数据泄露；能够兼容多种数据格式，适应不同类型的知识存储；同时具备高性能检索能力，快速响应用户请求，提升工作效率。]]></description><category></category></item><item><title><![CDATA[AI（2）：金融科技创新，AI落地方法及挑战]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/148875488</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/148875488</guid><author>Dustmicro</author><pubDate>Tue, 24 Jun 2025 17:20:08 +0800</pubDate><description><![CDATA[本文探讨金融行业AI技术落地的核心方法论和实施框架，重点解析工商银行"两阶"模式和华为"三层五阶八步"方法论。工商银行的"科技业务双前移"机制强调科技团队主动深入业务一线(第一阶)，以及业务深度介入AI方案原型开发(第二阶)，实现科技与业务深度融合。华为方法论则从战略、组织和技术三个层面系统化推进AI转型，强调企业级统筹管理。文章旨在帮助金融机构掌握AI落地的关键路径、成功要素及应对挑战的策略，包括战略决心、场景选择、模型匹配等核心要素，提升AI项目实施成功率。
]]></description><category></category></item><item><title><![CDATA[AI三部曲（三）：大模型训练与优化，技术方法与实践路径]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/148769882</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/148769882</guid><author>Dustmicro</author><pubDate>Thu, 19 Jun 2025 16:46:32 +0800</pubDate><description><![CDATA[通俗解释：我们可以将⼤模型⽐喻为⼀个求知欲旺盛的“智能体”。它最初如同⼀张⽩纸，通过 “阅读”海量的⽂本、图⽚、代码等各种形式的知识（即数据），逐渐学习理解语⾔的规律、世界的常识、不同领域的信息，甚⾄学会推理和创作。这个“学习”的过程，就是⼤模型训练。其核⼼⽬标是构建⼀个具备强⼤基础能⼒的预训练模型 (Pre-trained Model)——即通用大语言模型，为后续针对特定任务的适配和优化打下坚实的基础。这个预训练阶段赋予模型通⽤的语⾔理解、知识推理、内容⽣成等核⼼能⼒，使其能够处理⼴泛的任务。]]></description><category></category></item><item><title><![CDATA[AI三部曲（二）：金融科技创新，AI落地方法及挑战]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/148600174</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/148600174</guid><author>Dustmicro</author><pubDate>Thu, 12 Jun 2025 10:16:00 +0800</pubDate><description><![CDATA[重在普及头部企业在AI落地的探索中总结出来的一些宝贵经验，为即将落地AI项目的企业提供实践提供借鉴，并在此基础上关注落地的六大关键要素整合一套符实践指引，最后探讨几个在这个过程中将面临的挑战。]]></description><category></category></item><item><title><![CDATA[AI三部曲（一）：从工具演进到能力涌现的深刻变革与未来展望]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/148158699</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/148158699</guid><author>Dustmicro</author><pubDate>Fri, 23 May 2025 15:29:43 +0800</pubDate><description><![CDATA[AI的快速发展对人类的生活方式有哪些影响？我们是怎么从“AI能干什么”演进到“我们想用AI做什么”的？为什么说未来取代你的不是AI而是使用AI的人？]]></description><category></category></item><item><title><![CDATA[3.1、网关]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/127020151</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/127020151</guid><author>Dustmicro</author><pubDate>Sat, 24 Sep 2022 00:38:21 +0800</pubDate><description><![CDATA[网关]]></description><category></category></item><item><title><![CDATA[浅谈设计模式]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/124034374</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/124034374</guid><author>Dustmicro</author><pubDate>Sat, 09 Apr 2022 23:52:49 +0800</pubDate><description><![CDATA[设计模式
1、常见的设计模式
我们常见的设计模式有工厂模式、代理模式、单例模式、策略模式、观察者模式、包装设计模式、模板方法模式等等。
我们在项目代码编写中手写代码用的比较多，一般就模板方法模式、责任链模式，策略模式、单例模式这些，像工厂模式、代理模式这一类模式手写的代码反而不多。
这一类手写的不多但是大部分我们使用的Spring框架情况下对其还是能够了解，像我们使用的打印日志方法LoggerFactory，还有我们的时间方法DateFormat在我们的框架底层已经是给我们设计好了的经常直接拿来使用的
1.]]></description><category></category></item><item><title><![CDATA[一个故事，讲懂什么是区块链]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/122734905</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/122734905</guid><author>Dustmicro</author><pubDate>Fri, 28 Jan 2022 19:13:57 +0800</pubDate><description><![CDATA[区块链起源
一个故事，讲懂什么是区块链。
我们假设在很多年以前，那时候科技还不那么的发达，没有手机没有电脑，甚至还没有出现一个统一的有效的货币。在一个叫做大河村的村子里住着很多村民，因为没有货币所以他们交易的方式便是通过记账的方式。
就像下面这张图，村民B向村民A买了100元的猪肉，那么相应的A 的账本上便多了100，记为+100。B的账本上便少了100，记为-100。

这就是最原始的交易，村民A和B的账本上都会对这次交易记录一笔。但是如果人数量达到一定程度呢？每产生一笔交易都会实时记录下这一笔，如果当天]]></description><category></category></item><item><title><![CDATA[MYSQL插入数据时检查字段值是否重复]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/122331210</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/122331210</guid><author>Dustmicro</author><pubDate>Wed, 05 Jan 2022 20:37:22 +0800</pubDate><description><![CDATA[项目需求
现有一张u_ps的车位信息表，对应每个小区的车位id ps_id自增长，每个车位又对应车位编号num，车位id由自增长，车位编号可以根据自己小区情况手动添加设置，但是不能重复，车位编号不能重复。这就需要在新增车位信息的时候代码检验新增的该num在u_ps表中是否存在，存在则抛出异常，不存在则做插入操作。
我们的主键为车位id  ps_id，我们的思路是当插入一条数据，先查询车位信息表，遍历新的数据中的num是否存在，或者说新增的num在表中是否为空，是则抛出异常，否则执行插入操作。 这是代码逻辑。]]></description><category></category></item><item><title><![CDATA[eclipse单元测试写法]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/122200673</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/122200673</guid><author>Dustmicro</author><pubDate>Tue, 28 Dec 2021 19:47:28 +0800</pubDate><description><![CDATA[eclipse的单元测试有很多种，这里是针对我的项目所编写的测试代码，仅参考代码逻辑，以修改员工信息为例：



1、在测试时需要先进行登录操作，拿到token，在这之前将token设置为null：String token = null;

2、拿到请求端口地址

3、在进行所有的@Test之前都要进行@Before登录测试

4、以json格式为主要配置格式，账户密码登录操作系统

   


rs = HttpClient.operate()

设置客户端格式，登录名、方式、空。

5、
...]]></description><category></category></item><item><title><![CDATA[java将数据同时插入到两张表中]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/122134930</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/122134930</guid><author>Dustmicro</author><pubDate>Fri, 24 Dec 2021 20:50:07 +0800</pubDate><description><![CDATA[要求：
xml配置文件中已经配置好sql语句的增、删、改、查，只需要在service层编写java代码实现将数据同时插入到两张表中。
以员工和用户为例，在某种环境下员工也是用户，新增员工信息Staff的时候同时将信息添加到用户表User中。xml中已经配置好了sql语句的增、删、改、查，需要在service层中编写java代码达到需求：
@Service("addStaff")
/**传入staff参数，返回String类型信息**/
public String addStaff(Staff staff,S]]></description><category></category></item><item><title><![CDATA[查询菜单树的方法]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/122094490</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/122094490</guid><author>Dustmicro</author><pubDate>Wed, 22 Dec 2021 21:03:13 +0800</pubDate><description><![CDATA[菜单树
以查询部门为例，查询的部门的所在菜单，有它的父级菜单和子级菜单，要求通过部门id直接查询该部门所在的部门菜单树
以Springboot为例子，该篇为学习笔记
/**根据部门id查询部门树**/
/**自定义的Service可自定义端口，这里我定义的部门树接口是DeptTree**/
@Service("DeptTree")
public List&lt;Ztree&gt; selectDept(Dept dept,SqlSession sqlSession) throws Exception{
	/]]></description><category></category></item><item><title><![CDATA[throw 和 throws 的区别]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/120235060</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/120235060</guid><author>Dustmicro</author><pubDate>Sat, 11 Sep 2021 20:38:53 +0800</pubDate><description><![CDATA[我们在运行一段代码，做一个项目的时候遇到BUG、异常是再正常不过的事情。说到异常，异常种类是有很多种的，Throwable就是异常的根类。
常见的异常就有在Throwable下的子类 错误 - Error 和 异常 - Exception
Exception异常又分为一般异常和运行时异常 RuntimeException（运行时异常不需要代码显示捕获）
既然说了异常，那么重点就来了，常用的两个抛出异常的方法throw和throws，单独从外表看一个“s”的区别但用法却大了很多。。。。。
thow:

...]]></description><category></category></item><item><title><![CDATA[final、finally和return]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/119797826</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/119797826</guid><author>Dustmicro</author><pubDate>Thu, 19 Aug 2021 14:54:13 +0800</pubDate><description><![CDATA[final、finally和return
众所周知，一提到final就会想到static、一想到try…catch用法就会想到还有个finally、一想到finally就又会引出return与其的关系。
那么就来好好理一理这三者：
1、final与static的区别
首先这两者都是有相同点的：
①都可以修饰类，成员变量，方法
②都不能用于修饰构造方法

其次static可以修饰代码块，final不可以；
static不可以修饰方法内的局部变量，final可以；
static:

static修饰表示静态或全]]></description><category></category></item><item><title><![CDATA[由浅到深的JDBC]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/119610610</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/119610610</guid><author>Dustmicro</author><pubDate>Thu, 12 Aug 2021 11:02:28 +0800</pubDate><description><![CDATA[大三学了那么久的java的JDBC一直没怎么用得上，今年有幸在一家公司实习接触了
一些项目总算是有那么点点明白了所谓的接口JDBC到底是怎么一回事的了

有时候不一定得很会用，那种只封装了几个工具类的一眼就能看出来 啊！这玩意儿是JDBC代码！
现在的开发更多的是Mybatis,Hibernate或者Spring Data（个人觉得Spring Data更方便因为用得更多），但是尽管用了很多不同的方法框架去完成项目其实都可以理解为在JDBC上封装了一层嘛，至少我是这么认为的
JDBC基础
1、什么是JDBC]]></description><category></category></item><item><title><![CDATA[Spring Boot学习笔记——运行一个简单程序]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/119567280</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/119567280</guid><author>Dustmicro</author><pubDate>Tue, 10 Aug 2021 13:44:50 +0800</pubDate><description><![CDATA[1、Spring Boot简介

简化Spring应用开发的一个框架；

整个Spring技术栈的一个大整合；

J2EE开发的一站式解决方案；

2、框架环境搭建准备

在使用之前还需要给电脑配置jdk和maven

jdk:

    官网下载jdk1.8及以上版本记住自己下载后的保存路径

我的路径是：D:\JDK\Java\jdk1.8.0_301



打开电脑的高级设置，依次点开：

我的电脑--&gt;右键属性--&gt;高级系统设置--&gt;环境变量--&gt;点击新建

新建一个...]]></description><category></category></item><item><title><![CDATA[简单谈谈java注解]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/119512645</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/119512645</guid><author>Dustmicro</author><pubDate>Sun, 08 Aug 2021 18:08:35 +0800</pubDate><description><![CDATA[java注解
此注解非彼注解，相对于开发中配置XML文件，注解更加方便简洁，有了注解在很大程度上
可以免去XML一部分任务。

1、什么是注解？
注解：Annotation
简单来说就是代码中的特殊标记，带有@的特殊标记。
这些标记会在代码编译、运行、类加载等的时候被读取到，并执行相对应的处理。
2、为什么要用到注解？
传统方法来讲，我们一般是在配置文件XML中配置我们需要的信息来告诉类该去如何实现运行，通俗点儿讲就像是我们平时看书的时候的标签一样，在使用这段代码时我们或者编译器会先去看你的标签上写了什么，]]></description><category></category></item><item><title><![CDATA[Exception的try用法]]></title><link>https://blog.youkuaiyun.com/Dustmicro/article/details/119422856</link><guid>https://blog.youkuaiyun.com/Dustmicro/article/details/119422856</guid><author>Dustmicro</author><pubDate>Thu, 05 Aug 2021 17:39:11 +0800</pubDate><description><![CDATA[Exception的try用法
就在前一两天刚接触并学会了有关Map的一些用法，
搞明白了map.add、键值、遍历列表数据等等
结果今天就在这基础上又遇到了问题，先上代码

private HttpClientParam unPassiveScan(Map&lt;String,Object&gt; map){
        Map&lt;String,String&gt; paraMap = new HashMap&lt;String,String&gt;();
        try{
       ]]></description><category></category></item></channel></rss>