Java/Hibernate/Hibernate Utility
Hibernate Utility
<source lang="java">
///////////////////////////////////////////////////////////////////////// package util; import org.hibernate.HibernateException; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; public class HibernateUtil {
public static final SessionFactory sessionFactory; static { try { // Create the SessionFactory from hibernate.cfg.xml Configuration config = new Configuration().configure(); sessionFactory = config.buildSessionFactory(); } catch (Throwable ex) { // Make sure you log the exception, as it might be swallowed System.err.println("Initial SessionFactory creation failed." + ex); throw new ExceptionInInitializerError(ex); } } public static final ThreadLocal session = new ThreadLocal(); public static Session currentSession() throws HibernateException { Session s = (Session) session.get(); // Open a new Session, if this thread has none yet if (s == null) { s = sessionFactory.openSession(); // Store it in the ThreadLocal variable session.set(s); } return s; } public static void closeSession() throws HibernateException { Session s = (Session) session.get(); if (s != null) s.close(); session.set(null); }
}
/////////////////////////////////////////////////////////////////////////
package util; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; import java.util.ArrayList; /**
* @author joeyin * */
public class ConnectionUtil {
static Connection conn = null; private static Statement st = null; public static void openConnection() { try { Class.forName("org.hsqldb.jdbcDriver"); System.out.println("Driver Loaded."); conn = DriverManager.getConnection("jdbc:hsqldb:mem:testdb", "sa", ""); System.out.println("Got Connection."); st = conn.createStatement(); } catch (Exception e) { System.err.println("Got an exception! "); System.err.println(e.getMessage()); e.printStackTrace(); System.exit(0); } } public static String[] select(String sql) { ArrayList data = new ArrayList(); try { ResultSet rs = st.executeQuery(sql); while (rs.next()) { data.add(rs.getString(1)); } } catch (Exception e) { System.out.println(sql); e.printStackTrace(); } if (data.size() == 0) { return new String[0]; } return (String[]) data.toArray(new String[data.size()]); } public static void update(String sql) { try { st.executeUpdate(sql); } catch (Exception e) { e.printStackTrace(); System.out.println(sql); // System.exit(0); } } public static void closeConnection() { try { conn.close(); System.out.println("Connection closed."); } catch (Exception e) { e.printStackTrace(); } }
}
</source>