<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[iku_n的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/iku_n</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; iku_n]]></copyright><item><title><![CDATA[设计模式-工厂模式]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/160307769</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/160307769</guid><author>iku_n</author><pubDate>Sun, 19 Apr 2026 14:20:42 +0800</pubDate><description><![CDATA[工厂模式摘要 工厂模式是Java中常用的创建型设计模式，核心思想是将对象创建过程与使用过程分离。主要分为三种类型： 简单工厂模式：通过参数决定创建对象类型 工厂方法模式：由子类决定实例化哪个类 抽象工厂模式：创建相关对象家族 实现步骤： 定义产品接口（如Shape） 创建具体产品类（Circle/Rectangle等） 构建工厂类根据输入参数返回对应产品 现代企业级实现方案： 结合Spring框架的IoC容器 使用策略模式+自动装配Map 通过@Component注解自动注册策略实现类 工厂类通过Map获取]]></description><category></category></item><item><title><![CDATA[序列化和反序列化]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/159548317</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/159548317</guid><author>iku_n</author><pubDate>Fri, 27 Mar 2026 16:05:22 +0800</pubDate><description><![CDATA[理解核心：序列化是将对象转换为字节流，反序列化是将其恢复。Java：标记接口，方便但有局限。：务必显式声明，用于版本兼容性。transient：排除不需要序列化的字段。自定义：在特殊场景下通过readObject增强控制。选择合适的协议：在分布式系统中，根据性能、跨语言和安全需求，优先考虑 Kryo、Protobuf、Hessian 或 JSON 等替代方案。安全至上：警惕反序列化漏洞，不要反序列化不可信数据。]]></description><category></category></item><item><title><![CDATA[SpringBoot对接飞书机器人]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/157130796</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/157130796</guid><author>iku_n</author><pubDate>Mon, 19 Jan 2026 10:47:01 +0800</pubDate><description><![CDATA[摘要：本文介绍了如何创建飞书群机器人并实现消息推送功能。首先在电脑端创建群组并添加机器人，获取webhook地址；通过开启签名校验确保安全性。代码部分使用配置类读取yml文件中的webhook和密钥，通过计算时间戳和密钥的HmacSHA256签名实现鉴权。最后通过HTTP POST请求发送格式化消息到飞书群，测试结果显示消息成功推送。整个流程包含机器人配置、安全校验和Java代码实现三个关键步骤。]]></description><category></category></item><item><title><![CDATA[5、Seata]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/155968505</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/155968505</guid><author>iku_n</author><pubDate>Tue, 16 Dec 2025 10:13:17 +0800</pubDate><description><![CDATA[分布式事务问题的产生源于微服务架构中服务间的独立运行状态难以协同。Seata框架通过TM（事务管理器）、TC（事务协调器）和RM（资源管理器）协同工作，以XID为事务标识实现全局事务管理。使用Seata需引入依赖并配置服务映射，通过@GlobalTransactional注解开启分布式事务。每个服务连接的数据库需创建undo_log表存储回滚信息，确保事务异常时可正确回滚。这种机制有效解决了跨服务事务一致性问题。]]></description><category></category></item><item><title><![CDATA[4、Gateway]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/155935384</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/155935384</guid><author>iku_n</author><pubDate>Mon, 15 Dec 2025 10:55:26 +0800</pubDate><description><![CDATA[Spring Cloud Gateway是一个基于Spring Boot的API网关服务，提供反向代理、认证鉴权、流量控制、熔断和日志监控等功能。其核心工作原理是通过路由匹配和过滤器链处理请求。配置方式支持YAML文件和编码两种形式，其中YAML配置包含路由规则定义（如路径匹配、负载均衡）和优先级设置。内置丰富的断言工厂（Path、Header等）用于请求匹配，过滤器则支持请求/响应修改和流量控制等操作。典型部署流程包括创建Gateway模块、引入依赖、配置Nacos注册中心和路由规则。过滤器执行遵循&qu]]></description><category></category></item><item><title><![CDATA[3、Sentinel]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/155935291</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/155935291</guid><author>iku_n</author><pubDate>Mon, 15 Dec 2025 10:53:49 +0800</pubDate><description><![CDATA[随着微服务的流行，服务和服务之间的稳定性变得越来越重要。Sentinel 以流量为切入点，从等多个维度保护服务的稳定性。定义定义工作原理。]]></description><category></category></item><item><title><![CDATA[2、OpenFeign]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/155854077</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/155854077</guid><author>iku_n</author><pubDate>Fri, 12 Dec 2025 13:31:42 +0800</pubDate><description><![CDATA[摘要：本文介绍了Spring Cloud OpenFeign的使用方法，包括声明式REST客户端配置、远程调用第三方接口、日志记录、超时控制、重试机制和拦截器实现。通过注解驱动方式简化HTTP请求，支持GET/POST请求参数传递，提供日志级别配置和超时设置，并演示了请求拦截器的全局和局部应用。文章涵盖了OpenFeign的核心功能，为微服务间通信提供便捷解决方案。]]></description><category></category></item><item><title><![CDATA[1、nacos]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/155854059</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/155854059</guid><author>iku_n</author><pubDate>Fri, 12 Dec 2025 13:30:36 +0800</pubDate><description><![CDATA[引入依赖，配置Nacos地址开启服务发现功能（默认是开启的）扩展获取服务实例列表负载均衡选择一个实例（需要引入 spring-cloud-starter-loadbalancer)可以发起远程调用。]]></description><category></category></item><item><title><![CDATA[15、RabbitMQ]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/155808259</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/155808259</guid><author>iku_n</author><pubDate>Thu, 11 Dec 2025 10:31:13 +0800</pubDate><description><![CDATA[RabbitMQ是一个开源消息队列系统，支持多种消息传递模式。摘要介绍了RabbitMQ的四种核心工作模式：1)简单模式（一对一消息传递）；2)工作队列模式（多消费者竞争消费）；3)发布订阅模式（广播消息）；4)路由模式（基于路由键定向发送）。每种模式均包含Java配置和实现代码示例，展示了生产者发送和消费者接收消息的完整流程。RabbitMQ通过这些模式实现了系统解耦、异步处理、流量削峰等分布式系统关键需求。]]></description><category></category></item><item><title><![CDATA[14、AOP]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/155767807</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/155767807</guid><author>iku_n</author><pubDate>Wed, 10 Dec 2025 09:32:34 +0800</pubDate><description><![CDATA[摘要：本文介绍了Spring Boot中AOP（面向切面编程）的应用，重点讲解了日志记录和权限控制的实现。AOP通过切面、连接点等核心概念，将横切关注点与业务逻辑分离。文章详细展示了如何配置AOP依赖、定义切面类，以及使用@Around等通知类型实现方法调用日志记录、性能监控和自定义日志级别。通过@LogMethod注解示例，演示了如何为不同方法设置不同日志级别，实现精细化的日志管理。这种AOP实现方式能有效解决调试、性能监控等开发痛点。]]></description><category></category></item><item><title><![CDATA[13、SpringBoot启动过程]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/155767752</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/155767752</guid><author>iku_n</author><pubDate>Wed, 10 Dec 2025 09:31:17 +0800</pubDate><description><![CDATA[SpringBoot启动过程 SpringBoot应用启动分为几个关键阶段： 初始化阶段：通过SpringApplication构造函数确定应用类型，加载初始化器和监听器 环境准备：配置PropertySources和Profiles，处理命令行参数 上下文创建：根据应用类型创建相应的应用上下文 自动配置：处理@SpringBootApplication注解，加载自动配置类 容器刷新：完成BeanFactory初始化、后置处理器注册等核心操作 启动完成：执行Runner接口实现类，完成应用启动 启动过程通过]]></description><category></category></item><item><title><![CDATA[12、多环境配置]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/155744606</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/155744606</guid><author>iku_n</author><pubDate>Tue, 09 Dec 2025 14:37:22 +0800</pubDate><description><![CDATA[本文详细介绍了Spring Boot多环境配置的实现方式。主要内容包括：1）通过application-{profile}.yml文件定义不同环境配置；2）配置激活的三种方式（YAML设置、命令行参数、IDE配置）；3）配置继承与覆盖逻辑；4）开发、测试、生产环境配置示例对比；5）常见问题解决方案；6）进阶技巧如@Profile注解使用；7）部署最佳实践。文章提供了完整的配置结构设计和实战示例，帮助开发者高效管理多环境下的应用配置。]]></description><category></category></item><item><title><![CDATA[11、核心注解]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/155744560</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/155744560</guid><author>iku_n</author><pubDate>Tue, 09 Dec 2025 14:36:26 +0800</pubDate><description><![CDATA[本文介绍了Spring Boot项目中常用的核心注解及其用法，包括： 项目初始化注解：@SpringBootApplication（启动类）、@Configuration+@Bean（配置类）、@PropertySource（加载配置文件） 组件注册注解：@Component及其衍生注解（@Service/@Repository/@Controller） 依赖注入注解：@Autowired（按类型注入）、@Resource（按名称注入） 作用域控制注解：@Scope（管理Bean生命周期） 条件注解：@Co]]></description><category></category></item><item><title><![CDATA[10、集成JPA方法]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/155697075</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/155697075</guid><author>iku_n</author><pubDate>Mon, 08 Dec 2025 11:00:20 +0800</pubDate><description><![CDATA[摘要： JPA是Java EE中的ORM规范，Spring Data JPA基于JPA进一步简化了数据访问开发。核心功能包括：1) 实体映射注解如@Entity、@Id等；2) 内置Repository方法如save()、findById()；3) 支持方法名自动生成查询和@Query自定义JPQL；4) 提供分页排序功能。SpringBoot集成步骤包括：添加依赖、配置数据源、定义实体类、创建Repository接口及业务层。通过继承JpaRepository可快速实现CRUD操作，显著提升开发效率。]]></description><category></category></item><item><title><![CDATA[9、缓存与Session共享]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/155696984</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/155696984</guid><author>iku_n</author><pubDate>Mon, 08 Dec 2025 10:59:10 +0800</pubDate><description><![CDATA[摘要：Spring缓存技术通过注解简化缓存实现，如@Cacheable、@CachePut等，配合Redis可提升系统性能。Session共享则通过Redis存储会话数据，解决分布式环境下的用户状态保持问题。两者均需合理配置过期时间，注意缓存穿透等问题。]]></description><category></category></item><item><title><![CDATA[8、事务管理@Transactional注解的深度解析]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/155613096</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/155613096</guid><author>iku_n</author><pubDate>Fri, 05 Dec 2025 16:45:21 +0800</pubDate><description><![CDATA[Spring的@Transactional注解简化了数据库事务管理，通过AOP实现事务控制。它支持ACID特性，提供多种传播行为和隔离级别配置，默认对RuntimeException回滚。使用时需注意仅对public方法有效，避免自调用问题，并确保数据库支持事务。典型应用场景包括订单处理、资金转账等需要原子性操作的业务逻辑，可通过属性定制传播行为、隔离级别和异常处理规则。]]></description><category></category></item><item><title><![CDATA[7、集成MyBatis]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/155613049</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/155613049</guid><author>iku_n</author><pubDate>Fri, 05 Dec 2025 16:43:40 +0800</pubDate><description><![CDATA[Spring Boot集成MyBatis的优势在于简化配置，支持注解和XML两种SQL编写方式，与Spring生态无缝整合。实现步骤包括：1)创建项目并添加依赖；2)配置数据库连接；3)定义实体类、Mapper接口；4)编写Service和Controller层。XML方式适合复杂SQL，需在resources/mapper下创建映射文件。集成过程通过自动配置减少样板代码，提高开发效率。]]></description><category></category></item><item><title><![CDATA[6、自动配置]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/155555384</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/155555384</guid><author>iku_n</author><pubDate>Thu, 04 Dec 2025 08:53:33 +0800</pubDate><description><![CDATA[摘要：Spring Boot的自动配置机制通过@SpringBootApplication注解组合实现，核心是@EnableAutoConfiguration和条件注解。自动配置类从META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports加载，通过@Conditional系列注解进行过滤。开发时可自定义自动配置类，使用@ConditionalOnClass等条件控制生效时机，并通过debug=true查看]]></description><category></category></item><item><title><![CDATA[5、内容协商机制]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/155555337</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/155555337</guid><author>iku_n</author><pubDate>Thu, 04 Dec 2025 08:52:31 +0800</pubDate><description><![CDATA[摘要：Spring Boot的内容协商机制支持客户端与服务器协商响应格式，主要实现方式包括基于HTTP Accept头、URL后缀和请求参数。默认配置支持JSON和XML格式，可通过application.properties自定义配置。开发者可创建自定义HttpMessageConverter来支持PDF等特殊格式，并通过ContentNegotiationManager管理媒体类型匹配。最佳实践建议REST API优先使用Accept头协商，同时明确控制器支持的媒体类型并合理处理自定义格式转换。]]></description><category></category></item><item><title><![CDATA[4、定时任务]]></title><link>https://blog.youkuaiyun.com/iku_n/article/details/155517035</link><guid>https://blog.youkuaiyun.com/iku_n/article/details/155517035</guid><author>iku_n</author><pubDate>Wed, 03 Dec 2025 08:57:14 +0800</pubDate><description><![CDATA[摘要：Spring Boot通过@Scheduled注解实现定时任务功能，支持fixedRate、fixedDelay和cron表达式三种调度方式。应用场景包括数据同步、缓存刷新、报表生成、系统健康检查和数据清理等。通过@EnableScheduling启用定时任务，开发者可以轻松配置各种周期性任务，如每小时同步数据、每日生成报表或定期清理过期数据。cron表达式提供了最灵活的时间控制，支持分钟、小时、日、月、周等多维度调度。]]></description><category></category></item></channel></rss>