@@ -16,24 +16,8 @@ public abstract class DaoBaseImpl<E extends BaseEntity> implements Dao<E> {
1616 protected Class <E > persistentClass = (Class <E >) ((ParameterizedType ) getClass ()
1717 .getGenericSuperclass ()).getActualTypeArguments ()[0 ];
1818
19- protected final SessionFactory sessionFactory = createSessionFactory ();
20-
21- private SessionFactory createSessionFactory () {
22- SessionFactory sessionFactory = new Configuration ()
23- .addAnnotatedClass (Wizard .class )
24- .addAnnotatedClass (Spellbook .class )
25- .addAnnotatedClass (Spell .class )
26- .setProperty ("hibernate.dialect" , "org.hibernate.dialect.H2Dialect" )
27- .setProperty ("hibernate.connection.url" , "jdbc:h2:mem:test;DB_CLOSE_DELAY=-1" )
28- .setProperty ("hibernate.current_session_context_class" , "thread" )
29- .setProperty ("hibernate.show_sql" , "true" )
30- .setProperty ("hibernate.hbm2ddl.auto" , "create-drop" )
31- .buildSessionFactory ();
32- return sessionFactory ;
33- }
34-
3519 private Session getSession () {
36- return sessionFactory .openSession ();
20+ return HibernateUtil . getSessionFactory () .openSession ();
3721 }
3822
3923 @ Override
@@ -43,7 +27,7 @@ public E find(Long id) {
4327 E result = null ;
4428 try {
4529 tx = session .beginTransaction ();
46- Criteria criteria = sessionFactory . getCurrentSession () .createCriteria (persistentClass );
30+ Criteria criteria = session .createCriteria (persistentClass );
4731 criteria .add (Restrictions .idEq (id ));
4832 result = (E ) criteria .uniqueResult ();
4933 tx .commit ();
0 commit comments