<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/assets/atom.xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <id>https://blog.dhbxs.eu.org/</id>
  <title>灯火不休时</title>
  <updated>2026-04-09T13:19:48.495+00:00[UTC]</updated>
  <description>灯火不休时(dhbxs)的博客站点，记录前端与后端开发的技术笔记、实战经验与学习心得，分享编程日常与个人思考。一名开发者的技术成长之路，持续更新Web开发、代码优化与生活随笔。</description>
  <author>
    <name>灯火不休时</name>
    <email>yao@mail.dhbxs.top</email>
    <uri>https://blog.dhbxs.top/</uri>
  </author>
  <link href="https://blog.dhbxs.eu.org/atom.xml" rel="self"></link>
  <link href="https://blog.dhbxs.eu.org/" rel="alternate"></link>
  <language>zh-CN</language>
  <generator uri="https://github.com/L33Z22L11/blog-v3" version="3.6.4">Clarity</generator>
  <icon>https://file.dhbxs.top/2026/01/nllahmfi.png</icon>
  <logo>https://file.dhbxs.top/ylvwvjjs.jpg</logo>
  <rights>© 2026 灯火不休时</rights>
  <subtitle>在代码里种诗</subtitle>
  <entry>
    <id>https://blog.dhbxs.eu.org/posts/7dc99e0</id>
    <title>从零手写一个 Spring Boot Starter：深入理解自动装配原理</title>
    <updated>2026-04-08T23:13:41Z</updated>
    <author>
      <name>灯火不休时</name>
    </author>
    <content type="html">
      <![CDATA[<img src="https://file.dhbxs.top/2026/04/csoexczb.webp" alt="从零手写一个 Spring Boot Starter：深入理解自动装配原理" /> <p>一篇关于如何开发自定义 Spring Boot Starter 的技术教程。文章以开发一个控制台 Banner 输出组件为例，手把手讲解了 Spring Boot 自动装配机制的实现原理和完整开发流程。文章通过实战案例揭示了 MyBatis-Plus 等第三方 Starter 背后的实现原理，帮助开发者理解 Spring Boot 的扩展机制。</p> <a class="view-full" href="https://blog.dhbxs.eu.org/posts/7dc99e0" target="_blank">点击查看全文</a>]]>
    </content>
    <link href="https://blog.dhbxs.eu.org/posts/7dc99e0"></link>
    <summary>一篇关于如何开发自定义 Spring Boot Starter 的技术教程。文章以开发一个控制台 Banner 输出组件为例，手把手讲解了 Spring Boot 自动装配机制的实现原理和完整开发流程。文章通过实战案例揭示了 MyBatis-Plus 等第三方 Starter 背后的实现原理，帮助开发者理解 Spring Boot 的扩展机制。</summary>
    <category term="开发"></category>
    <published>2026-04-08T23:13:41Z</published>
  </entry>
  <entry>
    <id>https://blog.dhbxs.eu.org/posts/4c27c0e</id>
    <title>LangChain4j工具调用中断引发JSON格式报错的问题调查</title>
    <updated>2025-11-01T08:37:52Z</updated>
    <author>
      <name>灯火不休时</name>
    </author>
    <content type="html">
      <![CDATA[<img src="https://file.dhbxs.top/2025/11/hhaqfien.webp" alt="LangChain4j工具调用中断引发JSON格式报错的问题调查" /> <p>本文记录了在使用LangChain4j集成AI服务时遇到的400错误问题排查过程。开发者在测试工具链功能时，因中断AI回复导致会话历史格式错误，引发大模型服务商报错。通过分析错误日志和工具调用流程，最终确定是中断会话导致的历史记录格式问题。文章详细记录了从错误表象到深层原因的分析过程，并附上工具调用流程图帮助理解问题本质。</p> <a class="view-full" href="https://blog.dhbxs.eu.org/posts/4c27c0e" target="_blank">点击查看全文</a>]]>
    </content>
    <link href="https://blog.dhbxs.eu.org/posts/4c27c0e"></link>
    <summary>本文记录了在使用LangChain4j集成AI服务时遇到的400错误问题排查过程。开发者在测试工具链功能时，因中断AI回复导致会话历史格式错误，引发大模型服务商报错。通过分析错误日志和工具调用流程，最终确定是中断会话导致的历史记录格式问题。文章详细记录了从错误表象到深层原因的分析过程，并附上工具调用流程图帮助理解问题本质。</summary>
    <category term="开发"></category>
    <published>2025-11-01T08:37:52Z</published>
  </entry>
  <entry>
    <id>https://blog.dhbxs.eu.org/posts/4dCtXKfh</id>
    <title>基于CNN深度学习网络的交通标志识别</title>
    <updated>2025-11-01T04:37:11Z</updated>
    <author>
      <name>灯火不休时</name>
    </author>
    <content type="html">
      <![CDATA[<img src="https://file.dhbxs.top/2025/10/ybfbhwfk.webp" alt="基于CNN深度学习网络的交通标志识别" /> <p>基于CNN深度学习的交通标志识别系统，采用TensorFlow/Keras构建卷积神经网络模型，实现高达95%的识别准确率。项目使用Python开发，配备tkinter图形界面，支持图片上传与实时识别。包含完整训练数据集处理、模型训练与评估流程，代码开源，适用于深度学习入门与计算机视觉实践。项目源码托管于GitHub与Gitee。</p> <a class="view-full" href="https://blog.dhbxs.eu.org/posts/4dCtXKfh" target="_blank">点击查看全文</a>]]>
    </content>
    <link href="https://blog.dhbxs.eu.org/posts/4dCtXKfh"></link>
    <summary>基于CNN深度学习的交通标志识别系统，采用TensorFlow/Keras构建卷积神经网络模型，实现高达95%的识别准确率。项目使用Python开发，配备tkinter图形界面，支持图片上传与实时识别。包含完整训练数据集处理、模型训练与评估流程，代码开源，适用于深度学习入门与计算机视觉实践。项目源码托管于GitHub与Gitee。</summary>
    <category term="开发"></category>
    <published>2025-11-01T04:37:11Z</published>
  </entry>
  <entry>
    <id>https://blog.dhbxs.eu.org/posts/b0439536</id>
    <title>策略模式优化多重判断</title>
    <updated>2025-10-15T16:00:00Z</updated>
    <author>
      <name>灯火不休时</name>
    </author>
    <content type="html">
      <![CDATA[<img src="https://file.dhbxs.top/2025/10/lcbzyhed.webp" alt="策略模式优化多重判断" /> <p>本文介绍了如何使用策略模式优化多重嵌套的条件判断逻辑。原始代码通过多层if-else处理不同b值下对字符串a的匹配规则，导致结构复杂、难以维护。作者提出采用策略模式进行重构：首先定义统一的策略接口GetStringStrategy，然后为每种b值（空字符串、"0"、"1"）分别实现具体的策略类，将内层判断逻辑封装其中；接着通过工厂类GetStringStrategyFactory统一管理策略实例，根据b值动态返回对应策略；最终调用方只需通过工厂获取策略并执行，无需关心具体实现。该方法有效解耦了条件判断逻辑，提升了代码的可读性、可维护性和扩展性。</p> <a class="view-full" href="https://blog.dhbxs.eu.org/posts/b0439536" target="_blank">点击查看全文</a>]]>
    </content>
    <link href="https://blog.dhbxs.eu.org/posts/b0439536"></link>
    <summary>本文介绍了如何使用策略模式优化多重嵌套的条件判断逻辑。原始代码通过多层if-else处理不同b值下对字符串a的匹配规则，导致结构复杂、难以维护。作者提出采用策略模式进行重构：首先定义统一的策略接口GetStringStrategy，然后为每种b值（空字符串、&quot;0&quot;、&quot;1&quot;）分别实现具体的策略类，将内层判断逻辑封装其中；接着通过工厂类GetStringStrategyFactory统一管理策略实例，根据b值动态返回对应策略；最终调用方只需通过工厂获取策略并执行，无需关心具体实现。该方法有效解耦了条件判断逻辑，提升了代码的可读性、可维护性和扩展性。</summary>
    <category term="开发"></category>
    <published>2025-10-15T16:00:00Z</published>
  </entry>
  <entry>
    <id>https://blog.dhbxs.eu.org/posts/d06540f2</id>
    <title>Hadoop集群搭建（1主2从）</title>
    <updated>2024-04-17T22:26:21Z</updated>
    <author>
      <name>灯火不休时</name>
    </author>
    <content type="html">
      <![CDATA[<img src="https://file.dhbxs.top/2025/10/ioyknzke.png" alt="Hadoop集群搭建（1主2从）" /> <p>本文详细记录了在 macOS Big Sur 系统上基于 VMware Fusion 搭建三节点 Hadoop 2.7.7 集群的全过程。作者使用 CentOS 7 最小化安装以节省资源，配置固定 IP、关闭防火墙与 SELinux，并通过克隆虚拟机快速构建 master、s1、s2 三台节点。教程涵盖 JDK 与 Hadoop 安装、SSH 免密登录、时间同步、Hadoop 核心配置文件（core-site.xml、hdfs-site.xml 等）修改、环境变量设置及集群启动验证。此外，还扩展部署了 Spark 3.1.1，完成从 Hadoop 到 Spark 的完整大数据环境搭建。全文步骤清晰，适合初学者实践参考。</p> <a class="view-full" href="https://blog.dhbxs.eu.org/posts/d06540f2" target="_blank">点击查看全文</a>]]>
    </content>
    <link href="https://blog.dhbxs.eu.org/posts/d06540f2"></link>
    <summary>本文详细记录了在 macOS Big Sur 系统上基于 VMware Fusion 搭建三节点 Hadoop 2.7.7 集群的全过程。作者使用 CentOS 7 最小化安装以节省资源，配置固定 IP、关闭防火墙与 SELinux，并通过克隆虚拟机快速构建 master、s1、s2 三台节点。教程涵盖 JDK 与 Hadoop 安装、SSH 免密登录、时间同步、Hadoop 核心配置文件（core-site.xml、hdfs-site.xml 等）修改、环境变量设置及集群启动验证。此外，还扩展部署了 Spark 3.1.1，完成从 Hadoop 到 Spark 的完整大数据环境搭建。全文步骤清晰，适合初学者实践参考。</summary>
    <category term="技术"></category>
    <published>2024-04-17T22:26:21Z</published>
  </entry>
</feed>
