小编zoi*_*eck的帖子

如何使用NHibernate和Spring为死锁配置RetryAdvice和ExceptionTranslation

我正在使用Spring.net 1.2和NHibernate 2.0.1.
在我的项目中我面临一些死锁问题,除了数据库调整以最小化出现我想实现Springs RetryAdvice来处理这个问题.
我找不到任何工作示例如何配置它.该参考似乎很清楚如何使用它,但不知何故,我不能让它工作.

<!--Used to translate NHibernate exception to Spring.DataAccessExceptions-->    
<object type="Spring.Dao.Attributes.PersistenceExceptionTranslationPostProcessor, Spring.Data"/>

<!--ExceptionHandler performing Retry on Deadlocks-->
<object name="ExceptionHandlingAdvice" type="Spring.Aspects.RetryAdvice, Spring.Aop">
  <property name="retryExpression" value="on exception name DeadLockLoserException retry 3x rate (1*#n + 0.5)"/>
</object>
Run Code Online (Sandbox Code Playgroud)

我已将[Repository]属性添加到我的DAO以启用ExceptionTranslation,并尝试将RetryAdvice添加到我正在使用的TransactionProxyFactoryObject但它不起作用.我不明白在哪里提出这个建议.我是否必须声明一个PointCut来添加它,或者我怎么能让它按预期工作.

Thx提前 - 任何帮助赞赏.

nhibernate aop spring hibernate spring.net

5
推荐指数
1
解决办法
2239
查看次数

标签 统计

aop ×1

hibernate ×1

nhibernate ×1

spring ×1

spring.net ×1