使用Hibernate和Spring,我的应用程序需要有机会在每次数据库更新的开始和结束时操作连接。我们的第一个猜测是覆盖事务管理器,但这似乎有一些间歇性的“预绑定JDBC连接发现!”的副作用。其他一些人更难以描述症状。
获得这种反对的最佳/最简单方法是什么?我看到有人建议覆盖数据源,然后包装连接,但这真的是最好的主意吗?包装连接似乎很危险,特别是因为Websphere有它自己的版本(WSconnection)。
想法?
答案 0 :(得分:0)
当DataSource.getConnection
完成时,操作连接最简单,这样您就可以确定某些事情会发生。所以你可以简单地创建一个DataSourceProxy / -Wrapper(给它一个名字)来做到这一点。有一件事你需要处理,也就是说,可能在连接结束时,你撤消操作(如果需要的话)。
您可以使用一些AOP来执行代码,而不是创建代理(例如在this answer中。