3、字典
摘要:一、简介 Redis的字典使用哈希表作为底层实现,一个哈希表里面可以有多个哈希表节点,而每个哈希表节点就保存了字典中的一个键值对。 1.1 结构体 1.1.1 字典 typedef struct dict { // 类型特定函数 dictType *type; // 私有数据 void *privd
阅读全文
12、服务引入之注册目录的刷新与服务的连接
摘要:上一节讲到服务引入的配置和参数订阅,经过参数订阅,消费端获取到了对应接口的分类下的提供者url,配置器url,路由url,那么接下来肯定要更新自己的提供者目录 并创建连接到提供者的客户端了。 除了服务引入启动的时候会进行提供者列表的刷新之外,在注册中心发生注册和注销事件的时候,dubbo也会进行提供
阅读全文
2、springcloud注册中心
摘要:前提:spring版本 -》1.2.6.RELEASE 一、注册中心的搭建 1.1 启动类 @EnableEurekaServer @SpringBootApplication public class EurekaServer { public static void main(String[]
阅读全文
16、创建aop代理
摘要:筛选好advisor之后,就可以创建aop了 protected Object org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator.createProxy( Class<?> beanClass, String b
阅读全文
15、筛选advisor
摘要:spring获取到所有需要advisor后,并不是每个advisor都适用于当前bean,它需要经过筛选,过滤掉不适用的advisor,spring的切点匹配模式非常复杂,使用了解释器模式 protected List<Advisor> org.springframework.aop.framewo
阅读全文
12、getBean
摘要:在我们使用spring的时候,我们需要ApplicationContext的时候我们会让某个类实现ApplicationContextAware接口,spring在调用refresh刷新方法的时候会在其内部方法prepareBeanFactory中添加ApplicationContextAwareP
阅读全文
7、注解配置的解析
摘要:前面我们通过解析配置文件元素的方式加载了BeanDefinition,但是spring野心不止于此,她呼应市场需求,开始慢慢的向注解配置的方向走去,于是乎出现了如今微服务化的spring-boot,那么spring是怎么通过注解配置来解析BeanDefinition的呢? public void r
阅读全文
5、sql执行过程-1
摘要:一、前情回顾 上一节讲到,mybatis使用JDK的动态代理为每个接口生成了代理类,其实际处理类为MapperProxy public Object org.apache.ibatis.binding.MapperProxy.invoke(Object proxy, Method method, O
阅读全文