摘要:
在查找AOP源码的时候,不知道如何下手,网上找了很多资料,分析源码后,来记录一下AOP的入口: BeanDefinition的解析 首先对spring.xml中文件的中的<aop:aspectj-autoproxy/>进行解析,如果发现不是bean标签,则会采用不同的类来解析。解析AOP的是AopN 阅读全文
摘要:
在查找AOP源码的时候,不知道如何下手,网上找了很多资料,分析源码后,来记录一下AOP的入口: BeanDefinition的解析 首先对spring.xml中文件的中的<aop:aspectj-autoproxy/>进行解析,如果发现不是bean标签,则会采用不同的类来解析。解析AOP的是AopN 阅读全文
摘要:
上一篇文章讲解了sqlSession怎么获取,大致流程如下: 在获取的sqlSession后,我们会获取mapper,然后调用接口的方法,如下: 这样我们一条sql语句就执行完了,具体怎么运行的呢? 先看第一句getMapper的实现,首先找到sqlSession的实例类DefaultSqlSess 阅读全文
摘要:
本文对mybatis的配置不做讲解,只从源码层面来分析mybatis的加载过程。 我们在使用mybatis时,一般流程如下,实例化一个sqlSessionFactory,然后通过sqlSessionFactory来获取一个sqlSession。 先看下sqlSessionFactory的build过 阅读全文
摘要:
原文出处:http://blog.csdn.net/jiankunking/article/details/52143504 概述 主要从几个方面来讲解动态代理: 1.什么是代理? 2.动态代理类 3.怎么使用动态代理? 4.动态代理如何实现? 5.结论 什么是代理? 代理是常用的设计模式,主要用途 阅读全文
摘要:
概述 mysql事务隔离级别分为以下四种: Read Uncommitted(读取未提交内容) 在该隔离级别,所有事务都可以看到其他未提交事务的执行结果。本隔离级别很少用于实际应用,因为它的性能也不比其他级别好多少。读取未提交的数据,也被称之为脏读(Dirty Read)。Read Committe 阅读全文
摘要:
概述 Redis服务器负责与客户端建立网络连接,之前的数据结构部分已经看过了,本章主要从下面三个方面讲解。 1.服务器执行命令的过程 2.serverCron函数的执行 3.服务器的初始化 服务器执行命令的过程 一个客户端请求命令的基本过程大致如下: 1.客户端发送请求命令给服务器,比如set ke 阅读全文
摘要:
概述 对于每个与服务器连接的客户端,服务器都为它创建相应的redisClient的数据结构,并保持了相应的状态。Redis Server通过一个链表来保存所有的客户端连接。 本章包括: 客户端数据结构介绍; 客户端的创建与关闭 数据结构 先来看下redisClient中的数据结构: 客户端创建与关闭 阅读全文
摘要:
概述 Redis服务器是一个事件驱动器,服务器需要处理以下两类事件: 文件事件:Redis服务器通过套接字与客户端进行通信,而文件事件就是服务器对套接字操作的抽象。 时间事件:Redis服务器需要定期的执行一些操作,比如serverCron函数,时间操作就是对这类操作的抽象。 文件事件 Redis基 阅读全文
摘要:
概述 Redis除了RDB方式提供持久化外,还提供了AOF的方式,和RDB保存数据库的键值对不同,AOF是记录数据库执行的命令来记录数据库状态的。当AOF开始时,Redis服务器加载时,会先检查AOF文件是否存在,如果存在,则加载AOF,否则加载RDB文件。本章主要分为: 1.AOF实现 2.AOF 阅读全文
摘要:
概述 Redis为内存数据库,即所有的键值对信息保存在内存中,那么一旦服务器出现问题重启,内存中的数据就会没有了。所以Redis需要实现持久化,将内存中的数据持久化到硬盘,在重新启动后,又将硬盘中的数据加载到内存中。 RDB文件生成与载入 有两个命令可用于生成RDB文件,save和bgsave: S 阅读全文
|