在使用Hibernate的过程中,免不了可能需要调用存储过程等需要用到Connection的时候,但使用了Hibernate4后发现,session.connection();方法过时了,而有轻微强迫症的笔者不太能接受调用过时的方法,毫无安全感,在查看资料和Hibernate帮助文档后发现,在4.x中使用了doWork方式代替了session.connection方式,下面来代码
此时使用匿名内部类方式实现的execute就会传递connection接口给你,注意执行完相应业务后,不要关闭此connection
- // 过时了
- getSession().connection();
- // 4.x后请使用以下方式
- getSession().doWork(new Work() {
- @Override
- public void execute(Connection connection) {
- }
- });
此时使用匿名内部类方式实现的execute就会传递connection接口给你,注意执行完相应业务后,不要关闭此connection
本文介绍了在 Hibernate 4.x 中如何使用 doWork 方法替代过时的 session.connection 方法来获取数据库连接,适用于需要直接操作 Connection 的场景,如调用存储过程等。

175

被折叠的 条评论
为什么被折叠?



