摘要:一、Spring事务配置 1.编程式事务 编程时事务以代码方式管理事务,就是说事务由开发者通过代码方式实现,这里需要使用一个事务定类接口TransactionDefinition,我们使用默认实现类DefaultTransactionDefinition就可以。这里不做重点介绍。 2.声明式事务 编
阅读全文
摘要:一、Spring 数据库事务管理器的设计 在Spring中数据库事务是通过PlatformTransactionManager 进行管理的,前面我们用到的jdbcTemplate是不支持事务的,而支持事务的是org.sringframework. transaction. support. Tran
阅读全文
摘要:一、JdbcTemplate 概述 在前面我们连接数据库通过传统的JDBC代码方式实现数据连接,可以参看Spring(2) IoC 的概念和作用中的例子,在JDBC中可能存在滥用try .. catch ... finally .. 语句,导致代码可读性和维护性下降,那么Spring提出了自己的解决
阅读全文
摘要:一、环境准备 前面我们利用账户转账的例子进行了Spring IOC的讲解,我们在学习 spring 的 aop 时,也采用账户转账作为示例,并且把 spring 的 ioc 也一起应用进来。 1.代码准备 实体类、接口及实现类我们沿用之前的代码。 2.引入必要的Maven依赖 <project xm
阅读全文
摘要:1.选择连接点 Spring是方法级别的AOP框架,我们主要是以某个类的某个方法作为连接点,用动态代理的理论来说,就是要拦截哪个方法织入对应的AOP通知。 (1)建立接口 package com.xhbjava.service; import com.xhbjava.pojo.Account; /*
阅读全文
摘要:一、Spring中AOP的细节 1.AOP相关术语 (1)Joinpoint(连接点): 所谓连接点是指那些被拦截到的点。在 spring 中,这些点指的是方法,因为 spring 只支持方法类型的连接点。 (2)Pointcut( 切入点): 所谓的切入点是指我们要对那些Joinpoint进行拦截
阅读全文
摘要:如果说IoC是Spring的核心,那么面向切面编程就是Spring最为重要的功能之一,在数据库事务中切面编程被广泛的应用。接下来我们从基础开始学习AOP编程。 一、动态代理 1、一个简单的约定游戏 (1)约定规则 首先我们创建一个Intercept接口,代码如下: package com.xhbja
阅读全文
摘要:一、基于注解和xml配置 1.概述 我们需要理解基于IOC配置和xml配置实现的功能都是一样的,都是为了降低程序的耦合性,只是配置的方式不同罢了。在实际开发过程中我们根据公司习惯和个人习惯决定具体用那种方式实现,因此两种方式都需要掌握。 2.环境搭建 前面我们已经搭建好环境,因此我们在原来的基础进行
阅读全文
摘要:一、环境搭建 1.项目构建,我们在原来的基础上修改即可。 修改maven工程的pom文件,添加必须的引用: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-i
阅读全文
摘要:一、环境搭建 此处拿账户的业务层和持久层的依赖关系举例(简单的模拟,不涉及增删改查操作)解决它们之间的依赖。 1.创建Java的maven工程 (1)选择File → New → MavenProject 开始创建Maven项目 (2)选择要创建的Maven项目原型 (3)输入创建Maven项目所必
阅读全文
摘要:一、程序的耦合和解耦 1.耦合 耦合性(Coupling),也叫耦合度,是对模块间关联程度的度量。耦合的强弱取决于模块间接口的复杂性、调用模块的方式以及通过界面传送数据的多少。模块间的耦合度是指模块之间的依赖关系,包括控制关系、调用关系、数据传递关系。模块间联系越多,其耦合性越强,同时表明其独立性越
阅读全文
摘要:1.Spring概述 (1)什么是Spring Spring 是分层的 Java SE/EE 应用 full-stack 轻量级开源框架,以 IoC(Inverse Of Control:反转控制)和 AOP(Aspect Oriented Programming:面向切面编程)为内核,提供了展现层
阅读全文