因为一项工作,需要针对不同的数据库确认是否存在某个表,网上给出的方法是取得connection,使用DatabaseMetaData 来解决。
取得connection,网上普遍的方法是 session.connection(); 然而 按hibernate的计划,4.0开始将除去Session.connection()这个方法,已经不可以使用了。
参考了csdn上大佬的方案,用Session.doWork();
getSession().doWork(
new Work() {
public void execute(Connection connection) {
// 这里已经得到connection了,可以继续你的JDBC代码。
// 注意不要close了这个connection。
}
}
);