一般hibernate开发顺序为,先设计DB,然后是domain实体类,第三是mappings,然后再设计domain的时候一定要为domain提供一个默认的构造器,
假如不提供一个默认的构造器,则从数据库取得一条数据并利用它实例化一个domain对象的时候就一定会出问题,所以一定要有个默认构造器。
@Test public void hibernateTest05() throws HibernateException { Student s = null; s = new Test01().getStudent(1); System.out.println(s.getName()); } public Student getStudent(int id){ Student s = null; Session session = null; try { session = sf.openSession(); s = (Student) session.get(Student.class, id); //s = (Student) session.load(Student.class,id);//懒加载,将对象保存在对象中,后面在获取对象的时候不用到数据库去数据 } catch (HibernateException e) { e.printStackTrace(); } finally { if(null != session) { session.close(); } } return s;}