随笔分类 - Java / Java EE
摘要:Spring - 如何解决循环依赖 一、什么是循环依赖? 循环依赖是指在多个对象之间,存在相互依赖的关系,导致无法满足依赖关系的注入要求。具体来说,当两个或多个 bean 在 Spring 容器中互相依赖时,Spring 需要以某种方式打破这种依赖链,以避免死锁或初始化失败。 二、Spring解决循
阅读全文
摘要:Dubbo介绍 概要 Dubbo由阿里巴巴最早于 2011 年发布,是一款高性能的 RPC 框架,专注于服务调用和服务治理。它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。 简单来说 Dubbo 是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务
阅读全文
摘要:SpringCloud微服务系列 - Hystrix的使用和原理 概要 Hystrix是Netflix开源的一款容错框架。集成到微服务体系里面的一个组件,是微服务体系里面的熔断器。 主要用于处理微服务架构中的故障,提供了一种机制来防止级联故障。在高并发访问下,系统所依赖的服务的稳定性对系统的影响非常
阅读全文
摘要:MyBatis 原理 概要 MyBatis 是一个持久层框架,用于将对象与数据库中的记录进行映射。它通过 XML 或注解的方式定义 SQL 语句并将结果映射到 Java 对象。 一、 MyBatis 原理 1. 配置 MyBatis 通过 SqlSessionFactory 加载配置文件(mybat
阅读全文
摘要:Spring事务 - 事务传播机制 概要 在Java的Spring框架中,事务管理是保证应用数据一致性和可靠性的关键。Spring提供了灵活的事务传播机制,它定义了事务边界,以及在嵌套方法调用时如何处理事务。 事务的传播机制,顾名思义就是多个事务方法之间调用,事务如何在这些方法之间传播。 举个例子,
阅读全文
摘要:Spring事务失效的场景 概要 说到Spring事务,大家可能都会想到@Transactional注解,但是很多人只是停留在基础的使用层面上,在遇到一些比较特殊的场景,事务可能没有生效,直接在生产上暴露了,这可能就会导致比较严重的生产事故。今天,我们就简单来说下Spring事务的原理,然后总结一下
阅读全文
摘要:Spring - 事件驱动模型 Spring 事件驱动模型也是观察者模式很经典的应用。 一、Spring 中观察者模式的四个角色 1. 事件 - ApplicationEvent ApplicationEvent 是所有事件对象的父类。ApplicationEvent 继承自 jdk 的 Event
阅读全文
摘要:Spring容器系列-启动原理(下) 从上一篇文章《Spring容器系列-启动原理(上)》中,介绍了Spring容器初始化的核心方法refresh()的整体情况。这篇文章来详细展开介绍。其中比较重要的方法会标记上*** 一、refresh中的12个方法 1. prepareRefresh 主要作用:
阅读全文
摘要:Dubbo RPC开发中的序列化问题:深度解析反序列化导致的HashMap异常 最近在使用rpc的时候发现,解析后获取到的对象里面list成员属性值居然是个hashMap。导致其既不能当成hashMap也不能当成List结构来使用。后来通过调试发现这个问题的根源在于自己编码中深度拷贝的问题,导致反序
阅读全文