<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[bthdnj的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/bthdnj</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; bthdnj]]></copyright><item><title><![CDATA[pdf拼版工具，动态公式生成工具]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/153396314</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/153396314</guid><author>bthdnj</author><pubDate>Thu, 16 Oct 2025 10:42:36 +0800</pubDate><description><![CDATA[pdf拼接合并拆分。动态公式配置，前端拖拽配置公式]]></description><category></category></item><item><title><![CDATA[2025最新若依APP，后端集成satoken+mybatis-plus，实现若依app支持H5和微信小程序，支持app端代码生成]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/151228838</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/151228838</guid><author>bthdnj</author><pubDate>Fri, 05 Sep 2025 18:28:34 +0800</pubDate><description><![CDATA[若依APP，后端集成satoken+mybatis-plus，实现若依app支持H5和微信小程序，支持app端代码生成]]></description><category></category></item><item><title><![CDATA[若依vue集成satoken+mybatis-plus，实现若依app支持H5和微信小程序，支持app端代码生成]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/151228797</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/151228797</guid><author>bthdnj</author><pubDate>Fri, 05 Sep 2025 18:26:32 +0800</pubDate><description><![CDATA[若依vue集成satoken+mybatis-plus，实现若依app支持H5和微信小程序，支持app端代码生成]]></description><category></category></item><item><title><![CDATA[若依vue集成satoken+mybatis-plus，实现若依app支持H5和微信小程序，支持app端代码生成]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/151228726</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/151228726</guid><author>bthdnj</author><pubDate>Fri, 05 Sep 2025 18:23:00 +0800</pubDate><description><![CDATA[若依vue集成satoken+mybatis-plus，实现若依app支持H5和微信小程序，支持app端代码生成]]></description><category></category></item><item><title><![CDATA[多级数据结构导出Excel工具类，支持多级数据导入导出，支持自定义字体颜色和背景颜色，支持自定义转化器]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/150776037</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/150776037</guid><author>bthdnj</author><pubDate>Mon, 25 Aug 2025 18:04:14 +0800</pubDate><description><![CDATA[Excel工具类文档摘要 本Excel工具类基于Apache POI封装，提供简洁高效的导入导出功能。核心特性包括： 统一注解：使用@Excel注解配置导入导出规则，支持多级数据结构（对象嵌套、集合） 样式配置：可设置字体颜色、背景颜色等样式，内置多种颜色枚举值 类型转换：支持自定义转换器实现数据双向转换，如性别&quot;1/0&quot;与&quot;男/女&quot;互转 高级功能：包含分组关键字段、默认值、样式缓存等实用特性 安全性能：解决Zip bomb安全问题，优化内存使用 适用于各类数据报表的]]></description><category></category></item><item><title><![CDATA[Excel多级数据结构导入导出工具]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/150347390</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/150347390</guid><author>bthdnj</author><pubDate>Wed, 13 Aug 2025 15:20:13 +0800</pubDate><description><![CDATA[Excel多级数据结构导入导出工具摘要 该工具库专为处理复杂嵌套数据结构设计，支持Java对象与Excel文件双向转换。核心特性包括： 多级数据支持：自动处理任意层级嵌套（如集团→公司→部门），实现智能单元格合并与填充 注解配置：通过@ExcelColumn定义列映射，@ExcelObject处理嵌套关系，@ExcelConvert实现自定义转换 灵活转换：内置性别/状态等常用转换器，支持日期格式化和数据验证 工具提供简单API：exportExcel()导出数据并自动合并单元格，importExcel()]]></description><category></category></item><item><title><![CDATA[数据库事务总结]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/150024885</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/150024885</guid><author>bthdnj</author><pubDate>Thu, 07 Aug 2025 22:12:17 +0800</pubDate><description><![CDATA[本文总结了MySQL数据库事务的ACID特性及其实现机制：原子性通过Undo Log实现回滚；一致性通过数据库约束和应用校验保障；隔离性通过锁和MVCC控制并发访问；持久性依赖Redo Log和双写缓冲确保数据安全。详细剖析了MVCC的工作原理，包括版本链、Read View机制及快照读与当前读的区别。对比了不同隔离级别的实现方式，从最低隔离级别Read Uncommitted到最高Serializable，分析了各数据库对隔离级别的支持情况。文章还讨论了MVCC优化策略和长事务对系统性能的影响，为数据库事]]></description><category></category></item><item><title><![CDATA[分布式事务与分布式锁]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/150024837</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/150024837</guid><author>bthdnj</author><pubDate>Thu, 07 Aug 2025 22:11:29 +0800</pubDate><description><![CDATA[本文介绍了Java分布式事务与锁的核心技术。主要内容包括：1) 分布式事务基本概念与ACID特性，以及CAP/BASE理论；2) 主流解决方案如两阶段提交(2PC)及其改进版三阶段提交(3PC)，详细分析其协议流程与优缺点；3) TCC补偿事务模型，通过Try-Confirm-Cancel三阶段实现最终一致性。文中提供了Java代码实现示例，帮助理解分布式事务处理机制，并探讨了分布式环境下的网络不可靠性、并发控制等挑战。]]></description><category></category></item><item><title><![CDATA[mysql的InnoDB索引总结]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/150024802</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/150024802</guid><author>bthdnj</author><pubDate>Thu, 07 Aug 2025 22:10:51 +0800</pubDate><description><![CDATA[MySQL InnoDB索引核心知识摘要 索引类型与结构 InnoDB索引主要分为聚簇索引和二级索引。聚簇索引按照主键顺序物理存储数据行，每个表仅有一个；二级索引存储索引列+主键值，查询时需&quot;回表&quot;。复合索引遵循最左前缀原则，列顺序影响查询效率。特殊索引包括覆盖索引(避免回表)、前缀索引(节省空间)和全文索引(文本搜索)。 B+树的优势 MySQL选择B+树因其：1)树高度低，减少I/O(3-4层可存百万数据)；2)叶子节点链表支持高效范围查询；3)节点大小匹配磁盘页(4-16KB)；4]]></description><category></category></item><item><title><![CDATA[Java设计模式总结]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/150010128</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/150010128</guid><author>bthdnj</author><pubDate>Thu, 07 Aug 2025 13:54:20 +0800</pubDate><description><![CDATA[《Java设计模式详解》概要 本文全面介绍了Java设计模式，分为四大部分： 设计模式概述 解释了设计模式的概念、核心要素和使用价值 重点阐述了三大设计原则：开放封闭、依赖倒置和单一职责 将23种设计模式分为创建型、结构型和行为型三大类 创建型模式 关注对象创建机制，包含单例、工厂、建造者和原型等模式 详细介绍了单例模式的多种实现方式及其适用场景 结构型模式 涉及对象组合方式，包括适配器、装饰器、代理等7种模式 每种模式都通过Java代码示例展示实现方式 行为型模式 处理对象间通信，涵盖观察者、策略、模板方]]></description><category></category></item><item><title><![CDATA[java使用pdfbox实现pdf拼接完整版]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/149599972</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/149599972</guid><author>bthdnj</author><pubDate>Thu, 24 Jul 2025 11:45:41 +0800</pubDate><description><![CDATA[java使用pdfbox实现pdf页面拼接，支持页面压缩，裁切，旋转]]></description><category></category></item><item><title><![CDATA[Windows 安装 Redis8.0.2]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/148907168</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/148907168</guid><author>bthdnj</author><pubDate>Wed, 25 Jun 2025 21:41:41 +0800</pubDate><description><![CDATA[下载后直接解压到想要的安装目录就行了，启动Redis直接双击 redis-server.exe 文件就行了，Redis启动后双击 redis-cli.exe 就可以直接连接到Redis。但是这个启动是没有加载配置文件的启动，就算在redis.conf里面设置了需要密码，直接启动后还是不需要密码就可以连接，或者乱输入一个密码也能连接。在配置文件中设置密码，然后使用命令启动，打开命令窗口，进入到redis安装目录，使用命令启动,那么redis就按照配置文件中的内容启动。然后直接双击运行这个bat文件就可以了。]]></description><category></category></item><item><title><![CDATA[Windows解压安装MySQL8]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/148906430</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/148906430</guid><author>bthdnj</author><pubDate>Wed, 25 Jun 2025 20:40:33 +0800</pubDate><description><![CDATA[本文介绍了MySQL8的安装配置过程，主要包括：1)从官网下载社区版安装包；2)解压到指定目录并创建data文件夹和my.ini配置文件；3)添加系统环境变量；4)以管理员身份运行命令窗口，执行安装、初始化和启动命令；5)设置root用户密码为123456并刷新权限。完成后需重启MySQL服务，之后登录需使用密码验证。整个过程涵盖了从下载到完成配置的关键步骤。]]></description><category></category></item><item><title><![CDATA[Windows安装配置nvm 1.2.2]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/148899718</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/148899718</guid><author>bthdnj</author><pubDate>Wed, 25 Jun 2025 15:26:38 +0800</pubDate><description><![CDATA[【摘要】本文介绍nvm的完整安装配置流程：1)安装nvm并选择英文路径；2)配置setting.txt设置镜像源；3)创建node_cache和node_global文件夹，配置npm路径；4)设置NVM_HOME等环境变量并添加PATH；5)通过nvm安装管理Node版本，配置npm/yarn/cnpm工具及国内镜像源。文中包含详细的命令操作和路径配置说明，适用于Windows系统下Node.js开发环境的搭建。（149字）]]></description><category></category></item><item><title><![CDATA[Windows递归文件夹删除工具类]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/148897346</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/148897346</guid><author>bthdnj</author><pubDate>Wed, 25 Jun 2025 13:36:37 +0800</pubDate><description><![CDATA[Windows的文件层级太深，达到几千层，使用各种工具都删除不了，直接使用java代码，一键删除。]]></description><category></category></item><item><title><![CDATA[springboot3集成minio]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/148895630</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/148895630</guid><author>bthdnj</author><pubDate>Wed, 25 Jun 2025 11:54:48 +0800</pubDate><description><![CDATA[基于若依springboot3版本实现minio文件管理，实现桶的增删改查和文件的增删改查。同时在上传图片的时候支持对图片压缩转换为webp格式]]></description><category></category></item><item><title><![CDATA[java代码实现自动运行Windows软件]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/148848973</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/148848973</guid><author>bthdnj</author><pubDate>Mon, 23 Jun 2025 16:15:43 +0800</pubDate><description><![CDATA[java代码实现自动化运行Windows程序。]]></description><category></category></item><item><title><![CDATA[若依springboot3版本集成dynamic-datasource实现动态数据源切换]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/148635177</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/148635177</guid><author>bthdnj</author><pubDate>Fri, 13 Jun 2025 16:39:19 +0800</pubDate><description><![CDATA[摘要：本文介绍了数据库多数据源配置的优化方案。首先删除原有Druid相关配置类，然后引入dynamic-datasource-spring-boot3-starter依赖（版本4.2.0）。配置文件中详细设置了Druid连接池参数，包括线程数、等待时间、空闲检测等，并定义了主从数据源（huawei/master和test）。使用方式上，默认使用主库，通过在Mapper接口添加@DS(&quot;test&quot;)注解即可切换到从库数据源，也可在单个方法上使用该注解实现更细粒度的切换。该方案简化了多数据源]]></description><category></category></item><item><title><![CDATA[java使用pdfbox实现PDF页面拼接]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/148534261</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/148534261</guid><author>bthdnj</author><pubDate>Mon, 09 Jun 2025 17:53:57 +0800</pubDate><description><![CDATA[摘要：本文介绍了使用Apache PDFBox库实现PDF拼接功能的技术方案。通过定义PdfDocument、PdfPage和PdfInfo三个实体类来组织文档结构，核心PdfMergeService类实现PDF合并功能，支持精确控制每个PDF组件的坐标、尺寸和旋转角度（0/90/180/270度）。方案采用毫米单位转换PDF点数（1mm=2.8346457点）进行精确定位，通过矩阵变换实现旋转和缩放，最终生成无缝拼接的PDF文档。示例代码展示了如何配置90度旋转的名片拼接场景。]]></description><category></category></item><item><title><![CDATA[java使用pdfbox实现将pdf页面转化为图片并实现图片自定义压缩和转化为webp格式]]></title><link>https://blog.youkuaiyun.com/bthdnj/article/details/148533461</link><guid>https://blog.youkuaiyun.com/bthdnj/article/details/148533461</guid><author>bthdnj</author><pubDate>Mon, 09 Jun 2025 14:01:02 +0800</pubDate><description><![CDATA[本文介绍了一个Java工具类PdfImageConverter，用于将PDF文件转换为图片。该工具支持： 通过PDFBox库实现PDF渲染 可配置DPI（默认600） 可选择PNG或WebP格式输出 图片压缩功能（质量0.0-1.0可调） 自定义输出路径 使用示例展示了简单转换、自定义DPI、压缩转换和WebP转换等功能。该工具需要webp-imageio、PDFBox和Thumbnailator等Maven依赖支持。代码包含完善的错误处理和日志记录，适用于需要批量转换PDF为图片的场景。]]></description><category></category></item></channel></rss>