<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[devilnumber的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/devilnumber</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; devilnumber]]></copyright><item><title><![CDATA[Oracle → MySQL 迁移【静默错误坑】汇总]]></title><link>https://blog.csdn.net/devilnumber/article/details/164293022</link><guid>https://blog.csdn.net/devilnumber/article/details/164293022</guid><author>devilnumber</author><pubDate>Wed, 02 Sep 2026 10:58:07 +0800</pubDate><description><![CDATA[摘要要突出不报语法错误但结果数据错误，适合ERP/财务迁移场景。内容涵盖substr下标、空串与NULL、隐式转换、排序、分组、函数等静默坑。但要求不超过150字。需要简洁概括。&lt;/think&gt;Oracle迁移MySQL的静默数据错误风险极高：substr起始位0、空字符串与NULL语义、日期/数字隐式转换、NULL排序等均不报错但结果跑偏；关闭only_full_group_by后分组随机取值、in子查询含NULL行为不一致]]></description><category></category></item><item><title><![CDATA[Oracle 与 MySQL substr 函数差异总结]]></title><link>https://blog.csdn.net/devilnumber/article/details/164292781</link><guid>https://blog.csdn.net/devilnumber/article/details/164292781</guid><author>devilnumber</author><pubDate>Wed, 02 Sep 2026 10:54:09 +0800</pubDate><description><![CDATA[内容核心是Oracle和MySQL的substr起始下标差异及兼容写法。摘要要点：Oracle从0开始但0等价1，MySQL从1开始且0返回空；负数一致；建议用substr(col,1,3)统一；case when兼容。注意字数。&lt;/think&gt;摘要：Oracle与MySQL的substr起始下标不同：Oracle的0等价于1，而MySQL从1开始且传0返回空串，易致静默错误。负数索引两边一致。建议统一使用substr(col]]></description><category></category></item><item><title><![CDATA[Java 微服务负载均衡考试记忆点]]></title><link>https://blog.csdn.net/devilnumber/article/details/164226692</link><guid>https://blog.csdn.net/devilnumber/article/details/164226692</guid><author>devilnumber</author><pubDate>Mon, 31 Aug 2026 17:47:26 +0800</pubDate><description><![CDATA[Ribbon 默认懒加载，第一次调用才拉取实例列表，第一次请求耗时高；饥饿加载项目启动就缓存实例，消除首次调用慢。]]></description><category></category></item><item><title><![CDATA[Java 各类锁对比・诗意化记忆]]></title><link>https://blog.csdn.net/devilnumber/article/details/164076187</link><guid>https://blog.csdn.net/devilnumber/article/details/164076187</guid><author>devilnumber</author><pubDate>Thu, 27 Aug 2026 10:00:00 +0800</pubDate><description><![CDATA[偏向锁、轻量级锁、重量级锁、synchronized、Lock、ReentrantLock、读写锁、自旋锁、乐观悲观锁，古风记忆，适配面试。]]></description><category></category></item><item><title><![CDATA[MySQL 性能优化・诗意化记忆]]></title><link>https://blog.csdn.net/devilnumber/article/details/164076162</link><guid>https://blog.csdn.net/devilnumber/article/details/164076162</guid><author>devilnumber</author><pubDate>Thu, 27 Aug 2026 09:00:00 +0800</pubDate><description><![CDATA[覆盖索引、explain、SQL、表设计、锁、配置，古风短句，面试背诵向。]]></description><category></category></item><item><title><![CDATA[Java 主流微服务框架对比・诗意化记忆]]></title><link>https://blog.csdn.net/devilnumber/article/details/164075997</link><guid>https://blog.csdn.net/devilnumber/article/details/164075997</guid><author>devilnumber</author><pubDate>Wed, 26 Aug 2026 09:10:46 +0800</pubDate><description><![CDATA[三大主流：原生 SpringCloud、SpringCloud Alibaba、Apache Dubbo，把选型、组件、优劣化作古风，兼顾面试考点腾讯云。]]></description><category></category></item><item><title><![CDATA[Java 垃圾回收・诗意记忆]]></title><link>https://blog.csdn.net/devilnumber/article/details/164075575</link><guid>https://blog.csdn.net/devilnumber/article/details/164075575</guid><author>devilnumber</author><pubDate>Wed, 26 Aug 2026 08:55:11 +0800</pubDate><description><![CDATA[把 GC 核心概念化作短句，好背、有画面，不丢技术本质。]]></description><category></category></item><item><title><![CDATA[Java 四大函数式接口｜七言喻解]]></title><link>https://blog.csdn.net/devilnumber/article/details/164062302</link><guid>https://blog.csdn.net/devilnumber/article/details/164062302</guid><author>devilnumber</author><pubDate>Tue, 25 Aug 2026 17:48:51 +0800</pubDate><description><![CDATA[供者自生无待馈，消者受物不还归。转工炼旧成新质，判客分真辨是非。笺上书就平生计，未遇相招不奋威。Supplier 供给：自己产出，不需要外界给予；Consumer 消费：接收数据，不返回结果；Function 转换：淬炼旧数据，生成新结果；Predicate 断言：分辨条件，输出对错。所有 Lambda 写在笺上，不被调用，永远不会施展力量。]]></description><category></category></item><item><title><![CDATA[Java Lambda｜以代码作笺，行为作书]]></title><link>https://blog.csdn.net/devilnumber/article/details/164061972</link><guid>https://blog.csdn.net/devilnumber/article/details/164061972</guid><author>devilnumber</author><pubDate>Tue, 25 Aug 2026 17:32:23 +0800</pubDate><description><![CDATA[普通语句，落笔即行，行止随代码自上而下：行至此处歌便起，字落当场事已成。而 Lambda，只是誊写剧本。剧本落笔于此，登台却在千山之外。编译安然无恙，逻辑静静封存。待到远方某处触发调用，方才登台演绎。剧本书于东窗下，祸起偏在西城台。这便是 Lambda 暗藏的劫：异常埋于剧本，报错爆发于调用之地。栈轨迹迢迢千里，寻不见最初落笔之处，调试何其难也。祸藏卷内无声响，曲动方惊四座哀。古来方法拘类府，行为难作远行书。箭头一纸成盟约，不唤何曾展卷读。剧本书成非上演，旧景封罢莫相濡。]]></description><category></category></item><item><title><![CDATA[全新 50 例 Java 迷惑搞笑代码片段]]></title><link>https://blog.csdn.net/devilnumber/article/details/162090311</link><guid>https://blog.csdn.net/devilnumber/article/details/162090311</guid><author>devilnumber</author><pubDate>Mon, 24 Aug 2026 16:02:36 +0800</pubDate><description><![CDATA[这篇文章总结了Java开发中50个常见的编程&quot;坑点&quot;，覆盖基础语法、集合操作、并发编程、IO处理等多个方面。每个案例都揭示了看似合理但实际有问题的代码写法，并指出其潜在风险。例如浮点运算精度问题、自增操作陷阱、Stream流错误使用、并发工具类误用等。这些案例既有传统语法问题，也有Java 8新特性的典型误用，反映了开发者在实际编码中容易忽视的细节。文章通过&quot;亮点&quot;点评形式，简明扼要地解释了每个问题的本质和解决方法，对Java开发者具有很好的警示作用，能帮助避免常见错]]></description><category></category></item><item><title><![CDATA[Java 30 组高频技术 / 知识点多角度对比]]></title><link>https://blog.csdn.net/devilnumber/article/details/162090519</link><guid>https://blog.csdn.net/devilnumber/article/details/162090519</guid><author>devilnumber</author><pubDate>Mon, 24 Aug 2026 15:56:21 +0800</pubDate><description><![CDATA[本文系统对比了Java开发中的30组核心概念与技术差异，涵盖集合框架、并发编程、JVM、流处理、新特性等关键领域。集合部分详细分析了ArrayList/LinkedList的结构差异与适用场景，HashMap线程安全实现对比，以及各种Map的排序特性。并发章节深入比较了锁机制、同步工具和线程池选择策略。流处理部分解析了操作类型区别和性能考量。此外还包括JVM内存管理、GC算法、异常处理、泛型使用等核心知识点，每项对比均从底层原理、性能特征到实际应用场景进行多维度剖析，为开发者提供精准的技术选型依据。]]></description><category></category></item><item><title><![CDATA[Java 4 种内部类完整对比]]></title><link>https://blog.csdn.net/devilnumber/article/details/163907104</link><guid>https://blog.csdn.net/devilnumber/article/details/163907104</guid><author>devilnumber</author><pubDate>Thu, 20 Aug 2026 09:49:49 +0800</pubDate><description><![CDATA[【Java内部类核心对比与选型指南】 四种内部类关键区别： 成员内部类 - 持有外部类引用，可访问所有外部成员，但存在内存泄漏风险 静态内部类 - 独立实例，无外部引用，支持static成员，是DTO嵌套首选 局部内部类 - 方法内可见，只能访问final变量，业务极少使用 匿名内部类 - 无类名，Java8后多被Lambda替代 最佳实践： ✅ 嵌套DTO必选静态内部类 ✅ 强绑定外部实例用成员内部类 ✅ 事件回调优先Lambda ❌ 避免成员内部类做POJO序列化 内存泄漏提示：除静态内部类外，其他类型]]></description><category></category></item><item><title><![CDATA[类中内部类一定是静态的吗]]></title><link>https://blog.csdn.net/devilnumber/article/details/163906880</link><guid>https://blog.csdn.net/devilnumber/article/details/163906880</guid><author>devilnumber</author><pubDate>Thu, 20 Aug 2026 09:37:03 +0800</pubDate><description><![CDATA[Java内部类分为四种：成员内部类（非静态）、静态内部类（加static）、局部内部类（方法内定义）和匿名内部类。静态内部类不依赖外部实例，只能访问外部类的静态成员；普通成员内部类需通过外部实例创建，可访问外部类所有成员。局部和匿名内部类都不能用static修饰。关键区别在于是否使用static关键字，静态内部类可包含静态成员，而普通成员内部类不能。接口中的内部类默认是public static的。]]></description><category></category></item><item><title><![CDATA[K8s 巧妙设计 + 成熟演进推演]]></title><link>https://blog.csdn.net/devilnumber/article/details/163842390</link><guid>https://blog.csdn.net/devilnumber/article/details/163842390</guid><author>devilnumber</author><pubDate>Tue, 18 Aug 2026 09:01:30 +0800</pubDate><description><![CDATA[Kubernetes设计演进与核心架构解析 摘要：Kubernetes从Google内部Borg系统演化而来，通过解决容器编排的核心痛点逐步完善。其核心设计包括：1）声明式API架构，通过控制器循环调谐实现状态收敛；2）统一资源对象模型，所有组件通过API Server与etcd交互；3）分层调度体系（Deployment→ReplicaSet→Pod）；4）关键抽象如Pod（最小调度单元）、Service（解决动态IP问题）和Label（松耦合关联）。Kubernetes通过CRI/CNI/CSI三大接口]]></description><category></category></item><item><title><![CDATA[旧逻辑兼容整改之其他方案(分二)]]></title><link>https://blog.csdn.net/devilnumber/article/details/163726868</link><guid>https://blog.csdn.net/devilnumber/article/details/163726868</guid><author>devilnumber</author><pubDate>Thu, 13 Aug 2026 15:22:45 +0800</pubDate><description><![CDATA[摘要：针对VO层设计避免无脑继承或复制字段的问题，提供了多种解决方案：组合（聚合）模式、接口抽取公共字段、MapStruct映射、动态JSON视图等。其中，组合模式通过持有父VO对象实现字段透传，结合@JsonUnwrapped可平铺输出但存在反序列化问题；接口抽取统一方法签名但需复制字段；最推荐业务项目使用MapStruct，实现实体与VO解耦，灵活映射字段；动态视图（@JsonView）适合简单接口复用VO，复杂场景维护困难。核心原则是分离实体继承与VO契约，优先选择MapStruct确保工程稳健性。]]></description><category></category></item><item><title><![CDATA[旧逻辑兼容整改之继承还是全字段(分一)]]></title><link>https://blog.csdn.net/devilnumber/article/details/163726769</link><guid>https://blog.csdn.net/devilnumber/article/details/163726769</guid><author>devilnumber</author><pubDate>Thu, 13 Aug 2026 14:59:31 +0800</pubDate><description><![CDATA[【摘要】本文探讨了VO（值对象）继承设计的两种方案及最佳实践。方案1（继承VO）优点在于复用父类字段、自动同步修改，但会暴露不必要字段；方案2（字段拷贝）可精确控制输出字段但存在重复代码。核心建议：根据接口需求选择继承或手写VO，当需剔除父类字段时应采用全字段拷贝。特别强调VO继承不等于业务类继承，需警惕因继承导致敏感字段泄露，必要时可通过DTO转换层实现字段过滤。工程实践上，数据库实体可大胆继承，而VO设计应以接口契约为主导。]]></description><category></category></item><item><title><![CDATA[java的登山历程]]></title><link>https://blog.csdn.net/devilnumber/article/details/163431396</link><guid>https://blog.csdn.net/devilnumber/article/details/163431396</guid><author>devilnumber</author><pubDate>Mon, 03 Aug 2026 10:00:57 +0800</pubDate><description><![CDATA[摘要： Java学习如同登山之旅，分为四个阶段：1)基础入门（语法/面向对象/常用类）；2)核心进阶（并发/IO/反射等）；3)框架工程化（Spring/数据库/工程工具）；4)架构设计（分布式/性能优化/微服务）。每个阶段需攻克特定技术难点，通过项目实战巩固知识，最终成为能解决复杂问题的架构师。学习核心是循序渐进、夯实基础、坚持实操，并保持技术更新。（149字）]]></description><category></category></item><item><title><![CDATA[java的推恩令]]></title><link>https://blog.csdn.net/devilnumber/article/details/163431011</link><guid>https://blog.csdn.net/devilnumber/article/details/163431011</guid><author>devilnumber</author><pubDate>Mon, 03 Aug 2026 09:49:24 +0800</pubDate><description><![CDATA[《Java&quot;推恩令&quot;：线程池拆分与资源隔离实践》摘要 Java&quot;推恩令&quot;是国内技术圈对资源隔离策略的形象比喻，源自汉武帝削弱诸侯的历史典故。核心思想是将集中式资源拆分为业务独享单元：1）线程池推恩令（主流用法），通过按业务（订单/支付/消息等）拆分全局线程池，避免单一业务阻塞拖垮整体服务；2）延伸至缓存分片、连接池分组等场景。典型实现需遵循四大原则：业务隔离、任务分类、队列限流和适度拆分。其技术本质等同于微服务架构中的舱壁模式，通过资源分散实现故障隔离，但需平衡线程数]]></description><category></category></item><item><title><![CDATA[JsonUtils.toBean vs ObjectMapper.readValue 完整对比]]></title><link>https://blog.csdn.net/devilnumber/article/details/163322603</link><guid>https://blog.csdn.net/devilnumber/article/details/163322603</guid><author>devilnumber</author><pubDate>Thu, 30 Jul 2026 09:02:14 +0800</pubDate><description><![CDATA[摘要： Jackson的ObjectMapper.readValue()与Hutool的JsonUtils.toBean()均用于JSON反序列化，但存在关键差异： 底层管理：前者需手动配置ObjectMapper实例，灵活性高；后者封装全局单例ObjectMapper，简化代码但配置不可局部修改。 核心差异： 未知字段：Hutool默认忽略未知字段，Jackson需手动关闭FAIL_ON_UNKNOWN_PROPERTIES。 Spring整合：Hutool独立配置易与Spring MVC序列化规则冲突，]]></description><category></category></item><item><title><![CDATA[解读 Java 的 100 个多元分析角度（全部自带学术讨论 + 幽默搞笑双属性）]]></title><link>https://blog.csdn.net/devilnumber/article/details/163135799</link><guid>https://blog.csdn.net/devilnumber/article/details/163135799</guid><author>devilnumber</author><pubDate>Thu, 23 Jul 2026 15:26:56 +0800</pubDate><description><![CDATA[Java编程的百味哲学：从玄学到赛博朋克的多维解构 本文以100种跨界视角拆解Java语言，核心包含两大古典哲学基准： 东方玄学五行论：类（阳）与基础类型（阴）的GC调和，JVM内存管理暗合五行生克； 道德经逆向哲思：封装限制自由、GC反制创建，体现「反者道之动」的辩证法则。 其余视角分为10大类： 玄学脑洞：塔罗占卜null牌必报错，代码风水影响项目运势； 社科映射：访问修饰符如封建礼制（public为天子），微服务架构类比城市规划； 生活趣味：线程池似火锅抢菜，内存泄漏如出租屋垃圾堆积； 硬核科学：GC]]></description><category></category></item></channel></rss>