Configuration cf = new Configuration().configure();
Configuration cf = new Configuration().configure(); SessionFactory sf = cf.buildSessionFactory(); Session s = sf.getCurrentSession(); //或者是 Session s = sf.openSession();
package com.yb.util; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; final public class HibernateUtil { private static SessionFactory sessionFactory = null; //使用线程局部模式 private static ThreadLocal<Session> threadLocal = new ThreadLocal<Session>(); private HibernateUtil(){}; static{ sessionFactory = new Configuration().configure().buildSessionFactory(); } //获取全新的session public static Session openSession(){ return sessionFactory.openSession(); } //获取和线程关联的session public static Session getCurrentSession(){ Session session = threadLocal.get(); //判断是否得到 if(session==null){ session = sessionFactory.openSession(); //把session对象设置到threadLocal,相当于该session已经和线程绑定 threadLocal.set(session); } return session; } }
Configuration cf = new Configuration().configure(); SessionFactory sf = cf.buildSessionFactory(); Session s = sf.getCurrentSession(); //或者是:Session s = sf.openSession();
Session sess = factory.openSession(); Transaction tx; try{ tx = sess.beginTransaction(); //do some work ...... tx.commit(); }catch (Exception e){ if(tx != null) tx.rollback(); throw e; }finally{ sess.close(); }
try{ ts = session.beginTransaction(); //获取query引用【这里Employee不是表,而是domain类名】 //【id指的是映射对象的属性名称,而不是对应的表的字段名称】 Query query = session.createQuery("from Employee where id=100"); //通过list方法获取结果,这个list会自动的封装成对应的domain对象 List<Employee> list = query.list(); for(Employee e : list){ System.out.println(e.getName()+" "+e.getHiredate()); } ts.commit(); }catch(Exception e){ if(ts != null) ts.rollback(); throw e; }finally{ sess.close(); }
Criteria crit = sess.createCriteria(Cat.class); crit.setMaxResults(50); List cats = crit.list(); 限制结果集内容 List cats = sess.createCriteria(Cat.class).add(Restrictions.like("name","Rritz%")).add(Restrictions.between("weight",minWeight,maxWeight)).list();
原文:http://www.cnblogs.com/jingyunyb/p/3540662.html