摘要:
Spring事务传播原理和数据库操作事务原理: 事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)!特点:事务是恢复和并发控制的基本单位! 1、DataSource用来封装Connection,Connection用来封装Socket! Transacti 阅读全文
摘要:
SpringMVC请求流程图: SpringMVC源码时序图 MVC初始化部分: org.springframework.web.servlet.HttpServletBean#init org.springframework.web.servlet.FrameworkServlet#initWeb 阅读全文
摘要:
AOP: 动态代理实现AOP!增强、解耦!JDK,跟目标类实现一个相同的接口!Cglib直接继承目标类,重写目标方法! Spring源码中AOP在DI之后完成!IOC -> DI -> AOP -> MVC AOP顶层设计:getBean() -> ApplicationContext -> Adv 阅读全文
摘要:
DI部分: 几个关键的API:1、IOC容器BeanFactory getBean()AbstractBeanFactory 2、实例化策略SimpleInstantiationStrategy该类中进行Jdk或Cglib代理的选择! 3、存储实例所有相关的信息scope、proxy、instanc 阅读全文
摘要:
IOC部分主要的类: ApplicationContext策略:ClassPathXmlApplicationContextAnnotationConfigApplicationContextWebApplicationContext BeanDefinition策略:XmlBeanDefiniti 阅读全文
摘要:
基本数据类型的包装类java.lang.Integer是我们频繁使用的一个系统类,那么通过一个示例反应出的几个问题来深入理解一下此类的源码。 需求:实现Integer类型的两个数值交换。 Java值传递的示意图如下: 当调用swap(..)方法时,在堆中会创建这两个值得副本,形参num1和num2指 阅读全文
摘要:
当一个对象被当作参数传递到一个方法后,在此方法内可以改变这个对象的属性,那么这里到底是值传递还是引用传递? 答:是值传递。Java 语言的参数传递只有值传递。当一个实例对象作为参数被传递到方法中时,参数的值就是该对象的引用的一个副本。指向同一个对象,对象的内容可以在被调用的方法内改变,但对象的引用( 阅读全文
摘要:
什么叫hash? 就是把一个不固定的长度的二进制值映射成一个固定长度的二进制值。 hash算法:就是对应的这个映射规则。hash值:固定长度的二进制值。 什么叫hash表?HashMap底层的存储结构就是hashtable。 什么是hash算法? 1、除留余数法(应用于根据key找到hash表的in 阅读全文
摘要:
Spring事务传播机制:Spring在TransactionDefinition接口中规定了种类型的事务传播行为,它们规定了事务方法和事务方法发生嵌套时事务如何进行传播。即协调已经有事务标识的方法之间的发生调用时的事务上下文的规则(是否要有独立的事务隔离级别和锁)。 事务的嵌套概念:所谓事务的嵌套 阅读全文
摘要:
简述:Java虚拟机为Java程序提供运行时环境,其中一项重要的任务就是管理类和对象的生命周期。类的生命周期。类的生命周期从类被加载、连接和初始化开始,到类被卸载结束。当类处于生命周期中时,它的二级制数据位于方法区内,在堆区中还会有一个相应的描述这个类的Class对象(当Java程序使用任何一个类时 阅读全文