如何处理这样的事务?

现在有这样一个事务:

 

当用户进行某个操作之后,需要更新数据库的N张表(N>1),更新完毕后,需要去更新LDAP服务器。

 

这些必须在同一个事务中完成。

 

数据库的使用使用的是jdbc提供的事务管理,LDAP貌似没有事务处理。如何将其纳入同一个事务中?

 

做到Ldap出错后,回滚所有事务?

 

[quote]需要更新数据库的N张表(N>1),更新完毕后,需要去更新LDAP服务器。[/quote]

你的这个例子比较简单, 先是数据库, 后LDAP, 所以将它们写在一个事务里面就可以, 后面的LDAP服务器出错 你就抛异常, 前面的数据库自然会回滚的.

[code="java"]
开事务
更新数据库的N张表
更新LDAP服务器 // 这里出错就抛异常, 前面的就回滚.
关事务[/code]

如果是: 更新数据库的N张表, 再更新LDAP服务器, 再更新数据库的N张表 这样的事例就比较麻烦了.

用事物包裹服务多好啊
用不着这么费劲

可以尝试通过spring的来管理事务!针对jsbc有一个对应的类:DataSourceTransactionManager来.... 你可以查查这方面的资料