[{"data":1,"prerenderedAt":189},["ShallowReactive",2],{"index_posts":3,"$fZmNekugC-otmevyo8IZ1q0wqPEp00HGZm8mAFQCFDQM":169},[4,21,38,53,66,81,96,109,126,140,155],{"categories":5,"date":7,"description":8,"image":9,"path":10,"readingTime":11,"recommend":16,"tags":17,"title":19,"type":20,"updated":7},[6],"杂谈","2020-03-31 11:12:04","本文为Windows用户提供了打造纯净高效系统的完整指南。首先推荐从MSDN或微软官网下载无捆绑的原版系统镜像，并强调安装时使用英文用户名以避免兼容性问题。浏览器方面，建议使用原版Chrome或新版Edge，并配置AdBlock广告拦截和One Tab Plus标签管理插件。系统安全上，启用Windows Defender并搭配火绒拦截弹窗，同时将UAC权限调至最高以阻止静默安装。此外，推荐使用Bandizip（v6.26）、Listary、Motrix、Geek Uninstaller等无广告、高效率的工具软件，并倡导使用微软生态办公套件（如Office、OneDrive、ToDo、日历）及PotPlayer等专业应用，全面提升系统稳定性与工作效率。","https:\u002F\u002Ffile.dhbxs.top\u002F2025\u002F10\u002Fvmktqilh.webp","\u002Fposts\u002Ffc1be4e5",{"text":12,"minutes":13,"time":14,"words":15},"14 min read",13.38,802800,2676,0,[18],"win10","Win10简洁之道","story",{"categories":22,"date":24,"description":25,"image":26,"path":27,"readingTime":28,"recommend":16,"tags":33,"title":36,"type":37,"updated":24},[23],"技术","2020-10-06 11:18:24","本文详细介绍了在 Windows 10 系统下使用 PyCharm 搭建深度学习环境的完整流程。首先基于 Anaconda 创建 Python 项目环境，随后通过 PyCharm 内置终端使用清华或阿里镜像源安装 TensorFlow 2.3.1 和 Keras 2.4.3，并验证安装成功。针对常见 DLL 加载失败问题，建议安装 VC++ 运行库合集解决。若需启用 GPU 加速，文章指导用户确认 NVIDIA 显卡（如 MX150）对 CUDA 的支持，下载并安装兼容的 CUDA 10.1 和 cuDNN 7.6，配置相应系统环境变量，最终通过 TensorFlow 代码验证 GPU 是否正常调用。文末附常用 pip 命令速查表，便于环境管理。","https:\u002F\u002Ffile.dhbxs.top\u002F2025\u002F10\u002Fsukseffe.webp","\u002Fposts\u002F37561f92",{"text":29,"minutes":30,"time":31,"words":32},"6 min read",5.03,301800,1006,[34,35],"深度学习","PyCharm","利用PyCharm简化搭建深度学习环境(新手排坑)","tech",{"categories":39,"date":40,"description":41,"image":42,"path":43,"readingTime":44,"recommend":16,"tags":49,"title":52,"type":37,"updated":40},[23],"2020-03-18 05:29:52","本文介绍了基于顺序栈结构实现的三个算法实验。首先，定义了栈的基本操作，包括初始化、判空、入栈、出栈等，并通过测试验证其正确性。其次，设计算法判断单链表中长度为5的字符串是否中心对称：通过将前半部分字符入栈，后半部分与栈顶比较，若全部匹配则为对称。最后，利用两个栈（运算符栈和操作数栈）实现算术表达式求值，支持加减乘除及括号，运算结果限制在0～9之间。实验结果表明，程序能正确识别对称字符串并准确计算表达式值。","https:\u002F\u002Ffile.dhbxs.top\u002F2025\u002F10\u002Feqmpjyqy.webp","\u002Fposts\u002F2d35e3e5",{"text":45,"minutes":46,"time":47,"words":48},"8 min read",7.22,433200,1444,[50,51],"数据结构与算法","CPP","栈与队列的应用",{"categories":54,"date":55,"description":56,"image":57,"path":58,"readingTime":59,"recommend":16,"tags":64,"title":65,"type":37,"updated":55},[23],"2020-03-03 05:26:28","本实验围绕顺序表的应用展开，旨在掌握算法到程序的转换、熟悉顺序存储结构及其基本操作。实验内容包括：实现顺序表的初始化、插入、删除、查找、修改、判空\u002F满、求长度和显示等基本功能；设计算法将元素插入有序顺序表并保持有序；以及合并两个升序顺序表为一个新的有序顺序表。程序采用C语言实现，具备良好的注释、输入提示和错误处理机制（如非法位置判断），并通过主函数对各项功能进行测试。运行结果验证了各算法的正确性与健壮性，体现了顺序表在数据组织与操作中的实用性。","https:\u002F\u002Ffile.dhbxs.top\u002F2025\u002F10\u002Fezkwxsdu.webp","\u002Fposts\u002Ff8c33218",{"text":60,"minutes":61,"time":62,"words":63},"9 min read",8.44,506400,1688,[50,51],"顺序表的增删改查",{"categories":67,"date":69,"description":70,"image":71,"path":72,"readingTime":73,"recommend":16,"tags":78,"title":80,"type":37,"updated":69},[68],"开发","2024-08-02 05:52:01","原生css提供的做法在兼容性上做的不太好，FireFox或者Safari支持都不太好，可以换个思路，有另外一种实现方法。用JS去计算文字显示长度，然后再截取计算效果也不好，中英文文字字宽都不相同，同样英文字母的宽度I 和 G的宽度也不一样。可以利用css的float浮动布局，浮动布局有个天然的特性就是文字环绕，附近的文字会自动避开浮动的元素。",null,"\u002Fposts\u002Fd2e7adb",{"text":74,"minutes":75,"time":76,"words":77},"4 min read",3.505,210300,701,[79],"CSS","CSS多行溢出，兼容性比较好的做法",{"categories":82,"date":83,"description":84,"image":85,"path":86,"readingTime":87,"recommend":16,"tags":92,"title":95,"type":37,"updated":83},[23],"2024-04-18 06:26:21","本文详细记录了在 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 的完整大数据环境搭建。全文步骤清晰，适合初学者实践参考。","https:\u002F\u002Ffile.dhbxs.top\u002F2025\u002F10\u002Fioyknzke.png","\u002Fposts\u002Fd06540f2",{"text":88,"minutes":89,"time":90,"words":91},"23 min read",22.415,1344900,4483,[93,94],"Hadoop","大数据与云计算","Hadoop集群搭建（1主2从）",{"categories":97,"date":98,"description":99,"image":71,"path":100,"readingTime":101,"recommend":16,"tags":106,"title":108,"type":37,"updated":98},[23],"2024-08-27 05:56:13","随着前端工程化的不断完善，各种包管理工具和构建工具也越来越多。在Node生态里，绕不开NPM，Yarn，PNPM这些包管理工具，但是项目中一般都是用PNPM包管理工具而不用NPM，有一部分原因就是因为NPM包管理工具容易产生幻影依赖的问题。","\u002Fposts\u002F8a960ce",{"text":102,"minutes":103,"time":104,"words":105},"5 min read",4.99,299400,998,[107],"Node.js","NPM包管理工具的幻影依赖问题",{"categories":110,"date":111,"description":112,"image":113,"path":114,"readingTime":115,"recommend":120,"tags":121,"title":125,"type":37,"updated":111},[68],"2025-11-01 16:37:52","本文记录了在使用LangChain4j集成AI服务时遇到的400错误问题排查过程。开发者在测试工具链功能时，因中断AI回复导致会话历史格式错误，引发大模型服务商报错。通过分析错误日志和工具调用流程，最终确定是中断会话导致的历史记录格式问题。文章详细记录了从错误表象到深层原因的分析过程，并附上工具调用流程图帮助理解问题本质。","https:\u002F\u002Ffile.dhbxs.top\u002F2025\u002F11\u002Fhhaqfien.webp","\u002Fposts\u002F4c27c0e",{"text":116,"minutes":117,"time":118,"words":119},"11 min read",10.405,624300,2081,2,[122,123,124],"AI应用开发","LLM","LangChain4j","LangChain4j工具调用中断引发JSON格式报错的问题调查",{"categories":127,"date":128,"description":129,"image":130,"path":131,"readingTime":132,"recommend":136,"tags":137,"title":139,"type":37,"updated":128},[68],"2025-11-01 12:37:11","基于CNN深度学习的交通标志识别系统，采用TensorFlow\u002FKeras构建卷积神经网络模型，实现高达95%的识别准确率。项目使用Python开发，配备tkinter图形界面，支持图片上传与实时识别。包含完整训练数据集处理、模型训练与评估流程，代码开源，适用于深度学习入门与计算机视觉实践。项目源码托管于GitHub与Gitee。","https:\u002F\u002Ffile.dhbxs.top\u002F2025\u002F10\u002Fybfbhwfk.webp","\u002Fposts\u002F4dCtXKfh",{"text":60,"minutes":133,"time":134,"words":135},8.59,515400,1718,1,[34,138],"CNN","基于CNN深度学习网络的交通标志识别",{"categories":141,"date":142,"description":143,"image":144,"path":145,"readingTime":146,"recommend":150,"tags":151,"title":154,"type":37,"updated":142},[68],"2025-10-16","本文介绍了如何使用策略模式优化多重嵌套的条件判断逻辑。原始代码通过多层if-else处理不同b值下对字符串a的匹配规则，导致结构复杂、难以维护。作者提出采用策略模式进行重构：首先定义统一的策略接口GetStringStrategy，然后为每种b值（空字符串、\"0\"、\"1\"）分别实现具体的策略类，将内层判断逻辑封装其中；接着通过工厂类GetStringStrategyFactory统一管理策略实例，根据b值动态返回对应策略；最终调用方只需通过工厂获取策略并执行，无需关心具体实现。该方法有效解耦了条件判断逻辑，提升了代码的可读性、可维护性和扩展性。","https:\u002F\u002Ffile.dhbxs.top\u002F2025\u002F10\u002Flcbzyhed.webp","\u002Fposts\u002Fb0439536",{"text":29,"minutes":147,"time":148,"words":149},5.595,335700,1119,3,[152,153],"设计模式","Java","策略模式优化多重判断",{"categories":156,"date":157,"description":158,"image":159,"path":160,"readingTime":161,"recommend":165,"tags":166,"title":168,"type":37,"updated":157},[68],"2026-04-09 07:13:41","一篇关于如何开发自定义 Spring Boot Starter 的技术教程。文章以开发一个控制台 Banner 输出组件为例，手把手讲解了 Spring Boot 自动装配机制的实现原理和完整开发流程。文章通过实战案例揭示了 MyBatis-Plus 等第三方 Starter 背后的实现原理，帮助开发者理解 Spring Boot 的扩展机制。","https:\u002F\u002Ffile.dhbxs.top\u002F2026\u002F04\u002Fcsoexczb.webp","\u002Fposts\u002F7dc99e0",{"text":45,"minutes":162,"time":163,"words":164},7.525,451500,1505,4,[167,153],"SpringBoot","从零手写一个 Spring Boot Starter：深入理解自动装配原理",{"total":170,"annual":173,"categories":181,"tags":188},{"posts":171,"words":172},12,20022,{"2020":174,"2024":176,"2025":178,"2026":180},{"posts":165,"words":175},6814,{"posts":165,"words":177},6785,{"posts":150,"words":179},4918,{"posts":136,"words":164},[182,184,185,187],{"name":183,"posts":136},"未分类",{"name":6,"posts":136},{"name":23,"posts":186},5,{"name":68,"posts":186},[18,34,35,50,51,79,93,94,107,122,123,124,138,152,153,167],1776347330945]