外置命名查询:
* 在映射文件中采用<query>标签来定义hql
* 在程序中采用session.getNamedQuery()方法得到hql查询串
例子代码如下:
|
映射文件: <!— name属性值必须是唯一,可以放在任意映射文件, 建议放在一个专门放命名查询的映射文件 --> <query name="searchStudents"> <![CDATA[ SELECT s FROM Student s where s.id<? ]]> </query> 客户端测试代码: /** * 外置命名查询 * @author Administrator */ public class NameQueryTest extends TestCase { public void testQuery1() { Session session = null; try { session = HibernateUtils.getSession(); session.beginTransaction(); List students = session.getNamedQuery("searchStudents") .setParameter(0, 10) .list(); for (Iterator iter=students.iterator(); iter.hasNext();) { Student student = (Student)iter.next(); System.out.println(student.getName()); } session.getTransaction().commit(); }catch(Exception e) { e.printStackTrace(); session.getTransaction().rollback(); }finally { HibernateUtils.closeSession(session); } } } |
外置命名查询示例

本文介绍了一种通过映射文件定义HQL查询并利用session.getNamedQuery()方法进行调用的技术,展示了如何在外置文件中定义命名查询以及如何在程序中使用这些查询。
419

被折叠的 条评论
为什么被折叠?



