摘要:
分布式唯一ID要求 唯一性:生成的ID全局唯一,在特定范围内冲突概率极小。 有序性:生成的ID按某种规则有序,便于数据库插入及排序递增 可用性:可保证高并发下的可用性, 确保任何时候都能正确的生成ID。 自主性:分布式环境下不依赖中心认证即可自行生成ID。 安全性:不暴露系统和业务的信息, 如:订单 阅读全文
摘要:
如果是通过@Bean导入(不是通过扫描), 配置类是不生效的 比如B.class 配置了 @Configuration 现在B不在扫描包下(可能是平级), 通过某个类的@Bean方法, 导入了B, 但是这个B的配置类不生效, 因此B里面的@Bean是不生效的 阅读全文
摘要:
1 如何标识全配置类和半配置类 // 全配置类和半配置类(不包括Spring内置的类) else if (ConfigurationClassUtils.checkConfigurationClassCandidate(beanDef, this.metadataReaderFactory)) { 阅读全文
摘要:
在 ConfigurationClassPostProcessor 内部完成扫描 在扫描的时候, 为什么要用asm, 如果直接用类, 可能会把 static 里的直接执行了, spring尽量做到不直接影响用户(比如这是lazy的bean, 扫描出来又不是需要实例化bean, 怎么能执行static 阅读全文
摘要:
类似new了一个对象 先填充@Autowired的属性注入 再填充自动注入的属性注入(如果改了注入模型模型) new一个对象(只是对象, 无注入) AbstractAutowireCapableBeanFactory里instanceWrapper = createBeanInstance(bean 阅读全文
摘要:
ApplicationContext AnnotationConfigAppplicationContext AnnotationConfigApplicationContext实例化 调用父类构造方法时new出来的beanFactory = new DefaultListableBeanFacto 阅读全文
摘要:
知识点笔记 spring是对构造方法做推断来实例化bean Spring有自己的推断模型, 改变推断模型会改变Spring对构造方法的选择 AbstractAutowireCapableBeanFactory抽象类中的createBeanInstance方法里的一行代码 // 推测需要的构造方法 C 阅读全文
摘要:
JTA 接口规范 一共8个接口: XAResource:XA资源管理器接口,RM提供给TM调用。XAResource接口是基于X/Open CAE规范(分布式事务处理:XA规范)的行业标准XA接口的Java映射。 Xid:Xid接口是X/Open事务标识Xid结构的Java映射。此接口指定三个方法: 阅读全文
摘要:
XA/2PC XA和2PC间的关系 XA的事务模型只说明需要做什么事情, 但具体怎么实习未说明, 相对较需 2PC是将XA规范进行落地, 可以简单理解为 XA 是接口, 而 2PC 是 XA 的具体实现类(不正确的想法) XA/2PC的角色 X/Open的组织定义了分布式事务的模型,这里面有几个角色 阅读全文
摘要:
核心类及方法 Spring-tx-4.3.14.RELEASE 核心: 拦截器, 和其父类 org.springframework.aop.framework.ReflectiveMethodInvocation 相关(aop的包里) 以及 org.springframework.transacti 阅读全文