在Hibernate3中,Session接口中被废弃的方法包括:
1.执行查询的方法:find()、iterate()等。
Hibernate3一律采用createQuery()方法来执行所有的查询语句。session.createQuery(...).setString("newName",newName).executeUpdate();session.createQuery(...).list();
类级别的延迟检索是用到了代理类机制。
不管Customer.hbm.xml文件的<class>元素的lazy属性是true还是false,Session的get()方法及Query的list()方法在Customer类级别总是使用立即检索策略。
<set>元素来配置一对多关联。该元素有lazy和fetch属性
lazy属性:主要决定orders集合被初始化的时机
fetch属性:取值为“select”或"subselect"时,决定初始化orders集合时的查询语句形式:如果取值为“join”,则决定orders集合被初始化的时机。
注意:如果fetch属性设为join,那么lazy属性被忽略,此时显式设置lazy属性是无意义的
注意:Query的list()方法会忽略映射文件中配置的迫切左外连接检索策略。即,即使<set>的fetch属性设为jon,调用list()时,还是延迟检索。
原文:http://www.cnblogs.com/godfatherback/p/3543653.html