直接用svn源码上面的单元测试脚本,之前一直测试发现所有测试方法自动commit,即使跑出RuntimeException也不能回滚事务,后来通过官方文档描述,发现<tran locator="spring">中的locator必须指定spring才行,完整如下:
<tran locator="spring">
<dbgroup name="default" masterDBConfigName="masterDB" />
<dbgroup name="mysql" masterDBConfigName="mysqlDB" dialectName="mysql5dialect" />
<dbgroup name="oracle" masterDBConfigName="oracleDB" dialectName="oracle10gdialect" />
<virtualdbgroup name="cargoDB" dialectName="default" shadow="org.guzz.test.shop.CargoVirtualDBView" >
<dbgroup name="cargoDB.cargo2" masterDBConfigName="cargo2DB" />
</virtualdbgroup>
<virtualdbgroup name="commentDB" dialectName="default" shadow="org.guzz.test.CommentVirtualDBView" />
<virtualdbgroup name="other" dialectName="mysql5dialect" shadow="org.guzz.test.shop.CargoVirtualDBView" />
</tran>