Hibernate获取Connection

package com.trendcom.base.util;

import java.sql.Connection;
import java.sql.SQLException;

import javax.sql.DataSource;

import org.hibernate.SessionFactory;
import org.springframework.orm.hibernate4.SessionFactoryUtils;
import org.springframework.web.context.ContextLoaderListener;

public class DataSourceUtil {

 private static SessionFactory sessionFactory=null;
 
 static{  
  sessionFactory=(SessionFactory) ContextLoaderListener.getCurrentWebApplicationContext().getBean("sessionFactory");
 }

 
 public static Connection getConnection(){
  try {
   return getDataSource().getConnection();
  } catch (SQLException e) {
   e.printStackTrace();
  }
  return null;
 }

 
 public static SessionFactory getSessionFactory() {
  return sessionFactory;
 }

 public static void setSessionFactory(SessionFactory sessionFactory) {
  DataSourceUtil.sessionFactory = sessionFactory;
 }


 private static DataSource getDataSource() {
  return SessionFactoryUtils.getDataSource(getSessionFactory());
 }

}

原文地址:https://www.cnblogs.com/snake-hand/p/3141131.html