<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[java_t_t的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/java_t_t</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; java_t_t]]></copyright><item><title><![CDATA[Maven插件apiscan介绍与使用]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/157038480</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/157038480</guid><author>java_t_t</author><pubDate>Sat, 17 Jan 2026 00:50:41 +0800</pubDate><description><![CDATA[摘要： 本项目是一款基于Maven的插件，可自动为Spring项目生成Markdown格式的API文档，无需侵入代码或手动编写。相比同类工具（如已停更的apiggs），本插件通过ClassLoader获取类信息，虽无法读取字段注释，但对Spring支持更完善。用户只需在pom.xml中集成插件并编译项目，即可在指定目录生成文档。支持自定义输出路径和调试模式，开发者也可通过远程调试参与贡献。项目已在GitHub和GitCode开源，欢迎协作完善。]]></description><category></category></item><item><title><![CDATA[Java属性解析映射到Json]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/156545659</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/156545659</guid><author>java_t_t</author><pubDate>Sat, 03 Jan 2026 22:18:20 +0800</pubDate><description><![CDATA[将Java属性解析映射到Json属性。这是另一个用于Spring的Maven插件项目的一部分，因为比较独立，所以先把这部分功能拆出来，可以用于其它项目。]]></description><category></category></item><item><title><![CDATA[Spring Boot 静态资源映射]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/155543490</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/155543490</guid><author>java_t_t</author><pubDate>Wed, 03 Dec 2025 23:44:34 +0800</pubDate><description><![CDATA[Spring Boot默认提供四个静态资源目录，优先级从高到低依次为：/META-INF/resources/、/resources/、/static/、/public/、/src/main/webapp/。]]></description><category></category></item><item><title><![CDATA[几个有趣的算法]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/153990437</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/153990437</guid><author>java_t_t</author><pubDate>Tue, 28 Oct 2025 00:00:11 +0800</pubDate><description><![CDATA[本文介绍了四种常用算法实现：1) 全排列算法通过递归和栈结构生成下标的所有组合；2) 欧几里得算法递归求解最大公约数；3) 基于gcd计算最小公倍数；4) Knuth洗牌算法通过随机交换实现数组乱序。这些算法分别采用回溯、数论和概率方法，涵盖了排列组合、数学运算和随机化处理等常见编程场景。代码采用Java实现，包含清晰的注释说明各方法的参数和功能。]]></description><category></category></item><item><title><![CDATA[文件操作工具类]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/153706645</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/153706645</guid><author>java_t_t</author><pubDate>Wed, 22 Oct 2025 00:25:57 +0800</pubDate><description><![CDATA[这是一个Java文件操作工具类，提供文件读写功能。主要特点包括：1) 支持按路径或File对象读取/写入文件；2) 可指定字符编码(默认UTF-8)；3) 包含读取classpath资源的方法；4) 使用try-with-resources确保资源释放；5) 空值检查和异常处理。工具类封装了常见的文件操作，简化了文件读写流程，支持文本文件的完整读写操作。]]></description><category></category></item><item><title><![CDATA[浏览器监听、拦截按键事件]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/153706538</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/153706538</guid><author>java_t_t</author><pubDate>Wed, 22 Oct 2025 00:24:32 +0800</pubDate><description><![CDATA[本文介绍了如何通过JavaScript监听并拦截浏览器的按键事件，将上下方向键转换为左右方向键。代码在Chrome验证有效，适用于部分网页（如优快云博客图片浏览页）。通过keydown事件捕获按键，拦截上下键（keyCode 38/40）并重新派发为左右键（keyCode 37/39）。文中提到keyCode已废弃，建议使用key/code属性，但在Chrome中仍依赖keyCode实现。代码包含事件打印和拦截逻辑，通过preventDefault()阻止默认行为。]]></description><category></category></item><item><title><![CDATA[ZIP工具类]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/153661681</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/153661681</guid><author>java_t_t</author><pubDate>Tue, 21 Oct 2025 00:31:00 +0800</pubDate><description><![CDATA[这篇文章摘要如下： Java ZIP工具类提供了压缩和解压缩的常用方法。主要功能包括：1) 将指定目录下的所有文件压缩为ZIP文件或输出流；2) 支持自定义父路径以确定压缩文件相对路径；3) 解压ZIP文件到指定目录并返回解压文件列表。工具类使用ZipOutputStream/ZipInputStream实现核心功能，处理文件路径时使用Paths.normalize()规范化路径，并通过缓冲流提高IO效率。所有方法都包含异常处理，使用Lombok的@Slf4j记录错误日志。该工具类封装了ZIP操作常见场景，]]></description><category></category></item><item><title><![CDATA[集合工具类]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/153363238</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/153363238</guid><author>java_t_t</author><pubDate>Thu, 16 Oct 2025 00:46:40 +0800</pubDate><description><![CDATA[本文介绍了集合操作工具类CollectionUtil，提供了多种集合处理方法。主要功能包括：拆分列表(splitList)、判断集合是否为空(isEmpty)、获取两个集合的差集(complementary)、交集(intersection)、并集(union)、移除空元素(removeNull)以及比较集合元素是否相同(equals)。这些方法通过泛型支持多种数据类型，处理了空集合等边界情况，并采用排序后逐一比较的方式实现集合相等性判断。该工具类简化了常见的集合操作，提高了代码复用性。]]></description><category></category></item><item><title><![CDATA[HTTP 接口调用工具类（OkHttp 版）]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/150727071</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/150727071</guid><author>java_t_t</author><pubDate>Sun, 24 Aug 2025 23:31:53 +0800</pubDate><description><![CDATA[本文介绍了HTTP基础知识及一个基于OkHttp的同步HTTP请求工具类实现。首先概述了9种常见HTTP方法（GET、POST、PUT等）的特点及适用场景，特别指出哪些方法支持请求体。随后展示了一个Java实现的HTTP工具类，支持GET/POST/PUT等多种请求方式，包含同步调用、JSON/表单数据格式处理、文件上传等功能。工具类通过OkHttpClient实现，提供了超时设置和统一响应处理。代码示例包含枚举类定义、请求构建和响应处理逻辑，适用于需要简单HTTP客户端功能的Java项目。]]></description><category></category></item><item><title><![CDATA[JSON格式化与结构对比]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/149693729</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/149693729</guid><author>java_t_t</author><pubDate>Sun, 27 Jul 2025 18:17:02 +0800</pubDate><description><![CDATA[该JSON工具类提供两个核心功能：1) 格式化JSON字符串为最简结构并标注值类型；2) 比对两个JSON结构差异。采用fastjson解析JSON，支持三种特殊比对规则：null与任何类型相等、空对象互等、空数组互等。主要方法包括format()格式化JSON和compareStruct()比较结构差异，内部通过递归处理JSONObject和JSONArray。格式化时会保留结构框架但移除具体值，仅保留值类型标识；比对功能会输出结构变化（增删改）。]]></description><category></category></item><item><title><![CDATA[MyBatis TypeHandler的编写]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/149155668</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/149155668</guid><author>java_t_t</author><pubDate>Sun, 06 Jul 2025 17:21:59 +0800</pubDate><description><![CDATA[本文介绍了MyBatis自定义TypeHandler的实现方法]]></description><category></category></item><item><title><![CDATA[Spring Boot中拦截器的编写]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/148936710</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/148936710</guid><author>java_t_t</author><pubDate>Fri, 27 Jun 2025 00:45:16 +0800</pubDate><description><![CDATA[Spring Boot中拦截器的编写]]></description><category></category></item><item><title><![CDATA[MyBatis 插件开发]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/148826921</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/148826921</guid><author>java_t_t</author><pubDate>Sun, 22 Jun 2025 13:56:15 +0800</pubDate><description><![CDATA[本文介绍了MyBatis拦截器的实现方法]]></description><category></category></item><item><title><![CDATA[控制台打印带格式内容]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/147880633</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/147880633</guid><author>java_t_t</author><pubDate>Sun, 11 May 2025 22:32:10 +0800</pubDate><description><![CDATA[本文介绍了如何在控制台中打印带颜色和格式的文字，使用转义符 \033[ 配合参数实现样式设置。样式结束使用 \033[0m 恢复默认格式。文章详细说明了参数的含义，包括字体颜色、背景颜色及其他格式（如粗体、斜体、下划线等）。通过 Java 代码示例，展示了如何定义格式参数枚举类及内容格式化类，并提供了测试代码，验证了在 IDEA 控制台中输出带格式文字的效果。]]></description><category></category></item><item><title><![CDATA[安卓OCR使用（Google ML Kit）]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/144953793</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/144953793</guid><author>java_t_t</author><pubDate>Mon, 06 Jan 2025 01:11:12 +0800</pubDate><description><![CDATA[安卓OCR使用（Google ML Kit）]]></description><category></category></item><item><title><![CDATA[安卓触摸对焦]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/144938561</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/144938561</guid><author>java_t_t</author><pubDate>Sun, 05 Jan 2025 05:53:16 +0800</pubDate><description><![CDATA[触摸对焦需要通过`setFocusAreas()`设置对焦区域，而该方法的参数的坐标，与屏幕坐标并不相同，需要做一个转换。]]></description><category></category></item><item><title><![CDATA[安卓触摸事件的传递]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/144814013</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/144814013</guid><author>java_t_t</author><pubDate>Mon, 30 Dec 2024 01:56:15 +0800</pubDate><description><![CDATA[安卓触摸事件的传递]]></description><category></category></item><item><title><![CDATA[Java获取自身被调用点]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/144755624</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/144755624</guid><author>java_t_t</author><pubDate>Fri, 27 Dec 2024 00:00:34 +0800</pubDate><description><![CDATA[打印日志的时候，需要获取是在哪个地方被调用了，把调用点的信息一并打印出来。可以通过获取线程的调用栈，遍历后找到调用点。]]></description><category></category></item><item><title><![CDATA[安卓延迟自动点击]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/144162742</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/144162742</guid><author>java_t_t</author><pubDate>Sat, 30 Nov 2024 22:58:55 +0800</pubDate><description><![CDATA[安卓延迟自动点击]]></description><category></category></item><item><title><![CDATA[安卓动态添加View]]></title><link>https://blog.youkuaiyun.com/java_t_t/article/details/144002036</link><guid>https://blog.youkuaiyun.com/java_t_t/article/details/144002036</guid><author>java_t_t</author><pubDate>Sun, 24 Nov 2024 02:22:28 +0800</pubDate><description><![CDATA[在安卓应用中，有很多时候需要动态添加View。比如从后台获取商品列表，根据商品数量在页面渲染对应数量的条目，这时候就需要动态添加View。]]></description><category></category></item></channel></rss>