摘要:
1、Spring对事务管理的支持 Spring为事务管理提供了一致的编程模板,在高层次建立了统一的事务抽象。也就是说,不管选择Spring JDBC、Hibernate 、JPA 还是iBatis,Spring都让我们可以用统一的编程模型进行事务管理。 在Spring事务管理SPI(Service 阅读全文
摘要:
1、数据库事务基础知识 1)数据库事务有严格的定义,它必须同时满足4个特性:原子性(Atomic)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability),简称ACID。 2)数据并发的问题:脏读、不可重复读、幻想读、第一类丢失更新、第二类丢失更新。 3)数据 阅读全文
摘要:
4种定义切面的方式: 1)基于@AspectJ注解的方式: 2)基于<aop:aspect>的方式; 3)基于<aop:advisor>的方式; 4)基于Advisor类的方式。 如果项目采用JDK5.0,可以优先考虑使用@AspectJ;如果项目只能使用低版本的JDK,则可以考虑使用<aop:as 阅读全文
摘要:
使用基于Schema的切面定义后,切点、增强类型的注解信息从切面类中剥离出来,原来的切面类也就蜕变为真正意义上的POJO了。 1、一个简单切面的配置 基于Schema配置的切面示例: <?xml version="1.0" encoding="UTF-8" ?> <beans xmlns="http 阅读全文
摘要:
@AspectJ可以使用切点函数定义切点,我们还可以使用逻辑运算符对切点进行复核运算得到复合的切点,为了在切面中重用切点,我们还可以对切点进行命名,以便在其他的地方引用定义过的切点。当一个连接点匹配多个切点时,需要考虑织入顺序的问题,此外一个重要的问题是如何再增强中访问连接点上下文的信息。 Wait 阅读全文