钩子函数HibernateTemplate


import org.hibernate.Session;


public class MyHibernateTemplate {
    public void executeWithNativeSession(MyHibernateCallback callback){
        Session s=null;
        try {
            s=getSession();
            s.beginTransaction();
            //回调和钩子函数
            callback.doInHibernate(s);
            s.getTransaction().commit();
        } catch (Exception e) {
            s.getTransaction().rollback();
        }finally{
            
        }
    }

    private Session getSession() {
        // TODO Auto-generated method stub
        return null;
    }
    public static void save( final Object o) {
        new MyHibernateTemplate().executeWithNativeSession(new MyHibernateCallback() {
            
            @Override
            public void doInHibernate(Session s) {
                s.save(o);
                
            }
        });
    }

}


钩子类:

import org.hibernate.Session;


public interface MyHibernateCallback {
    public void doInHibernate(Session s);
}


你可能感兴趣的:(钩子函数HibernateTemplate)