public abstract class TransactionInterceptor extends Object implements net.sf.cglib.proxy.MethodInterceptor
| 构造器和说明 |
|---|
TransactionInterceptor() |
| 限定符和类型 | 方法和说明 |
|---|---|
protected abstract void |
commit(TransactionStatus status)
提交当前事务状态
|
<T> T |
getProxy(Class<T> clazz)
使用Cglib产生业务类的代理
|
protected abstract TransactionStatus |
getTransaction()
返回当前事务状态
|
abstract void |
initialize(Object accessObject)
初始化事务拦截器,设置访问对象
|
Object |
intercept(Object obj,
Method method,
Object[] args,
net.sf.cglib.proxy.MethodProxy proxy)
方法执行的拦截器,拦截条件为:
1、数据库访问类是DBTransaction的实现类
2、方法名称匹配初始化的事务方法列表
|
protected abstract void |
rollback(TransactionStatus status)
回滚当前事务状态
|
public <T> T getProxy(Class<T> clazz)
clazz - public Object intercept(Object obj, Method method, Object[] args, net.sf.cglib.proxy.MethodProxy proxy) throws Throwable
intercept 在接口中 net.sf.cglib.proxy.MethodInterceptorThrowablepublic abstract void initialize(Object accessObject)
accessObject - protected abstract TransactionStatus getTransaction()
protected abstract void commit(TransactionStatus status)
status - protected abstract void rollback(TransactionStatus status)
status - Copyright © 2013-2015. All Rights Reserved.