`
newleague
  • 浏览: 1473276 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类

hibernate实例简析-hibernate_hql(四)

阅读更多

1、查询过滤器 
 * 在映射文件中定义过滤器参数
 * 在类的映射中使用这些参数
 * 在程序中启用过滤器
 参见:Student.hbm.xml、FilterQueryTest.java

session.enableFilter("filtertest")
        .setParameter("myid", 10); 
   
   List students = session.createQuery("from Student").list();
   for (Iterator iter=students.iterator(); iter.hasNext();) {
    Student student = (Student)iter.next();
    System.out.println(student.getName());
   }

 

2、DML风格的操作(尽量少用,因为和缓存不同步)
 参见:DMLQueryTest.java

session.createQuery("update Student s set s.name=? where s.id < ?")
     .setParameter(0, "李四")
     .setParameter(1, 5)
     .executeUpdate();

 

===

<hibernate-mapping package="com.bjsxt.hibernate">
 <class name="Classes" table="t_classes">
  <id name="id">
   <generator class="native"/>
  </id>
  <property name="name"/>
  <set name="students" inverse="true" cascade="all">
   <key column="classesid"/>
   <one-to-many class="Student"/>
  </set>
 </class>
</hibernate-mapping>

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics