<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[BoneToBone的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/BoneToBone</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; BoneToBone]]></copyright><item><title><![CDATA[分布式锁ZK与redis ]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/149804418</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/149804418</guid><author>BoneToBone</author><pubDate>Thu, 31 Jul 2025 14:06:18 +0800</pubDate><description><![CDATA[ZooKeeper 和 Redis 是实现分布式锁的两种常见工具，它们在实现方式、性能、可靠性以及适用场景上存在显著差异。以下从实现机制、优缺点和适用场景三个方面进行详细对比，并提供简洁的代码示例。]]></description><category></category></item><item><title><![CDATA[java list 与set 集合的迭代器在进行元素操作时出现数据混乱问题及原因]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/149506710</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/149506710</guid><author>BoneToBone</author><pubDate>Mon, 21 Jul 2025 15:33:41 +0800</pubDate><description><![CDATA[]]></description><category></category></item><item><title><![CDATA[Langchain:输出解释器]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/149096785</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/149096785</guid><author>BoneToBone</author><pubDate>Thu, 03 Jul 2025 16:32:57 +0800</pubDate><description><![CDATA[输出解释器是 LangChain 提供的一个模块，用于处理 LLM（如 ChatOllama、OpenAI 等）生成的原始文本输出，将其转换为结构化的数据格式（如字典、列表、JSON 或自定义对象）。它通常用于以下场景：LLM 的输出是自由文本，可能包含不规则的格式或多余内容。应用程序需要将 LLM 输出解析为特定结构，以便后续处理或使用。LangChain 提供多种内置的输出解释器，例如：StructuredOutputParser：解析为结构化数据（如 JSON）。]]></description><category></category></item><item><title><![CDATA[LangChain: 提示词]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/149064795</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/149064795</guid><author>BoneToBone</author><pubDate>Thu, 03 Jul 2025 14:41:24 +0800</pubDate><description><![CDATA[1、用户提供输入（例如一个问题或任务描述）。示例选择器根据输入内容，从预定义的示例集中选择最相关的示例。选择依据可以是语义相似度、长度限制或其他策略。2、选择的示例被注入到提示词模板（PromptTemplate）中，与用户输入一起组成完整的提示词。提示词通常包含：1)系统指令（System Prompt）：定义模型的任务或角色。2)选择的示例：作为上下文或示范，展示输入-输出的范例。3)用户输入：当前需要模型处理的内容。完整的提示词被发送到大语言模型（LLM）或嵌入模型。]]></description><category></category></item><item><title><![CDATA[什么是向量？]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/149075678</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/149075678</guid><author>BoneToBone</author><pubDate>Wed, 02 Jul 2025 18:17:23 +0800</pubDate><description><![CDATA[向量（Vector）是数学和计算机科学中的基本概念，指具有大小（长度）和方向的量。在机器学习和数据科学中，向量通常表示为一组有序的数字，用于描述对象的特征。]]></description><category></category></item><item><title><![CDATA[LangChain 初探]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/147952154</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/147952154</guid><author>BoneToBone</author><pubDate>Thu, 05 Jun 2025 16:31:42 +0800</pubDate><description><![CDATA[所有LangChain组件都可以轻松扩展以支持你自己的版本。创建自定义聊天模型类创建自定义LLM类编写自定义检索器类编写自定义文档加载器编写自定义输出解析器类创建自定义回调处理程序定义自定义工具。]]></description><category></category></item><item><title><![CDATA[java 同步机制总结]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/134160595</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/134160595</guid><author>BoneToBone</author><pubDate>Wed, 01 Nov 2023 14:35:28 +0800</pubDate><description><![CDATA[例如线程之间状态的切换操作等；当线程进入synchronized 修饰的同步代码块时，同步对象的对象头的mark word字段的锁标识就会被设置为01，同时线程会在自己的线程栈中创建”锁记录(Lock Record)”的空间，用于存储mark word的锁拷贝信息；当线程进入synchronized 修饰的同步代码块时，同步对象的对象头的mark word字段的锁标识就会被设置为01，同时线程会在自己的线程栈中创建”锁记录(Lock Record)”的空间，用于存储mark word的锁拷贝信息；]]></description><category></category></item><item><title><![CDATA[http get post 请求区别]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/134015429</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/134015429</guid><author>BoneToBone</author><pubDate>Tue, 24 Oct 2023 16:22:36 +0800</pubDate><description><![CDATA[binary    只可以上传二进制数据，通常用来上传文件，由于没有键值，所以，一次只能上传一个文件。x-www-form-urlencoded    只能传递表单的键值对数据，切各个键值对数据分开。form-data  表单传递，既可以传递键值对数据，也可以传递文件；最后所有信息会合并为一条。POST请求的x-www-form-urlencoded 传参，只能传递键值对数据。POST请求的form-data传参  包含文件上传。POST请求的raw 传参。POST请求的url参数。]]></description><category></category></item><item><title><![CDATA[iPerf3 内网外网测试工具使用教程]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/133940013</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/133940013</guid><author>BoneToBone</author><pubDate>Fri, 20 Oct 2023 10:06:13 +0800</pubDate><description><![CDATA[linux 下载的安装包是rpm包，使用如下命令安装：rpm -i iperf3-3.1.3-1.fc24.x86_64.rpm。2、反向测试下行带宽命令： .\iperf3.exe -c 39.108.60.24    -t 10  -R。1、运行测试命令 .\iperf3.exe -c 39.108.60.24    -t 10。在一些内网或者外网使用时，排查或者检测网络带宽，测试的是宽带的峰值；可以使用并发测试，来模拟多人使用带宽的测试。2、运行命令： iperf3 -s。-n 发送的数据包大小。]]></description><category></category></item><item><title><![CDATA[java 编程规范总结]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/122555954</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/122555954</guid><author>BoneToBone</author><pubDate>Tue, 18 Jan 2022 11:13:29 +0800</pubDate><description><![CDATA[一、注释

所有的类、接口、方法都应该加上注释，注释要标明描述、作者、时间等，使信息完备；
	枚举类的每个枚举字段都要标明注释；
	方法内部单行注释，在被注释语句上方另起一行，使用//注释。方法内部多行注释使用/* */注释。注意与代码对齐。
	所有的抽象方法（包括接口中的方法）必须要用javadoc注释、除了返回值、参数、异常说明外，还必须指出该方法做什么事情，实现什么功能。 说明：如有实现和调用注意事项，请一并说明。
	类、类属性、类方法的注释必须使用javadoc规范，使用/**内容*/格式，不得使用]]></description><category></category></item><item><title><![CDATA[java  常用的加密算法及分类]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/102480918</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/102480918</guid><author>BoneToBone</author><pubDate>Thu, 10 Oct 2019 16:00:25 +0800</pubDate><description><![CDATA[1.加密算法分类：

  按照是否需要key加密解密分类：

       不需要key的加密：Base64加密，MD5，SHA1,SHA256

       需要key的加密：对称加密算法（AES,DES,3DES） 非对称加密算法（RSA）数字签名算法（RSA+MD5） HAMC

 按照加密是否可逆分类：

       单向加密算法(...]]></description><category></category></item><item><title><![CDATA[nginx学习：Nginx初探]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/79470760</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/79470760</guid><author>BoneToBone</author><pubDate>Fri, 09 Mar 2018 08:51:38 +0800</pubDate><description><![CDATA[1.常见服务器产品介绍：        Apache服务器（开源免费）：                优点：跨平台能力强，安全性能高，运行速度快，性能相对稳定。                缺点：Apache在设计时使用以“进程”为基础架构，进程比线程消耗更多的系统开支，这导致Apache在多处理环境中性能有所下降。因此，在对一个Apache Web站点进行扩容时，通常是增加服务器或扩充集群节...]]></description><category></category></item><item><title><![CDATA[Spring容器深入篇]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/75581981</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/75581981</guid><author>BoneToBone</author><pubDate>Fri, 21 Jul 2017 09:05:59 +0800</pubDate><description><![CDATA[1.spring内部工作机制：
           Spring的AbstractApplicationContext是ApplicationContext的抽象实现类；该类的refresh()方法定义了Spring容器在加载配置文件后的各项处理过程;
           refresh函数流程：
           1）初始化BeanFactory： 根据配置文件实例化BeanFac]]></description><category></category></item><item><title><![CDATA[spring学习(四)：在IOC容器中装配Bean]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/74986057</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/74986057</guid><author>BoneToBone</author><pubDate>Tue, 11 Jul 2017 16:44:14 +0800</pubDate><description><![CDATA[1.Spring 配置描述：
          Spring容器启动的三方面条件：
          1）Spring框架的类包都已经放到应用程序的类路径下;
          2) 应用程序为spring提供完备的Bean配置信息;
          3) Bean的类都已经放到应用程序的类路径下;
          spring容器根据Bean配置信息在容器内部建立bean]]></description><category></category></item><item><title><![CDATA[Spring学习(三)：BeanFactory和ApplicationContext]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/74966092</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/74966092</guid><author>BoneToBone</author><pubDate>Tue, 11 Jul 2017 14:30:11 +0800</pubDate><description><![CDATA[1.概述：
             Bean工厂(com.springframework.beans.factory.BeanFactory)是spring框架最核心的接口，它提供了高级Ioc的配置机制；BeanFactory使管理不同类型的java对象成为 可能；
             应用上下文(com.springframework.context.ApplicationConte]]></description><category></category></item><item><title><![CDATA[spring学习（二）：资源访问利器]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/74942447</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/74942447</guid><author>BoneToBone</author><pubDate>Tue, 11 Jul 2017 11:06:29 +0800</pubDate><description><![CDATA[1.Resource接口：                     
    该接口提供了更强的访问底层资源的能力，拥有对应不同资源的类型的实现类；主要方法：                                boolean exists();    资源是否存在；                      
          boolean isOpen();  资源是否打开；]]></description><category></category></item><item><title><![CDATA[Spring学习（一）概述]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/74908666</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/74908666</guid><author>BoneToBone</author><pubDate>Mon, 10 Jul 2017 09:27:22 +0800</pubDate><description><![CDATA[1.spring 体系结构：
             spring的五个模块：IOC，AOP，数据访问和集成，Web及远程操作，测试框架；
             IOC：BeanFactory接口是Spring框架的核心接口，实现类与类之间的依赖可以从代码中脱离出来，用配置文件的方式进行依赖关系的描述；
                       Context模块构建与核心模块之上]]></description><category></category></item><item><title><![CDATA[redis应用学习]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/71425621</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/71425621</guid><author>BoneToBone</author><pubDate>Mon, 08 May 2017 17:29:10 +0800</pubDate><description><![CDATA[一、redis简介：
              1）redis是什么？
               redis本质上是一种键值数据库；但他又具有关系型数据库（支持的存储类型）的一些特点，从而使他介于关系型数据库之间；
               redis不仅支持String类型，还支持Lists(有序)、sets(无序)类型；并且还可以完成排序；
             2）re]]></description><category></category></item><item><title><![CDATA[java反射机制及具体实现]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/71171104</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/71171104</guid><author>BoneToBone</author><pubDate>Thu, 04 May 2017 15:31:52 +0800</pubDate><description><![CDATA[Java反射机制

JAVA反射机制是在运行状态中，对于任意一个类，都能够知道这个类的所有属性和方法；对于任意一个对象，都能够调用它的任意一个方法；这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。
Java反射机制主要提供了以下功能： 在运行时判断任意一个对象所属的类；在运行时构造任意一个类的对象；在运行时判断任意一个类所具有的成员变量和方法；在运行时调用任意一个对]]></description><category></category></item><item><title><![CDATA[java路径获取]]></title><link>https://blog.youkuaiyun.com/BoneToBone/article/details/71170717</link><guid>https://blog.youkuaiyun.com/BoneToBone/article/details/71170717</guid><author>BoneToBone</author><pubDate>Thu, 04 May 2017 15:05:32 +0800</pubDate><description><![CDATA[在jsp和class文件中调用的相对路径不同。
 
在jsp里，根目录是WebRoot 在class文件中，根目录是WebRoot/WEB-INF/classes 当然你也可以用System.getProperty("user.dir")获取你工程的绝对路径。
 
1.jsp中取得路径：
以工程名为TEST为例：
(1)得到包含工程名的当前页面全路径：request.getReques]]></description><category></category></item></channel></rss>