Webwork项目总结(二)

来源:互联网 发布:java岗位要求 编辑:程序博客网 时间:2024/05/20 15:40

 三.Hibernate总结

     使用HQL语言:

 

     //获取操作数据库session

     Session session = getHibernateTemplate().getSessionFactory()
                .getCurrentSession();

 

  // 返回一行记录
  String hql = "from TOrder o where o.id = ?";
  TOrder o = (TOrder) s.createQuery(hql)
  .setParameter(0, orderId)
  .uniqueResult();
  
  // 命名参数
  Query q = sess.createQuery("from DomesticCat cat where cat.name = :name");
  q.setString("name", "Fritz");
  
  // 位置参数
  Query q = sess.createQuery("from DomesticCat cat where cat.name = ?");
  q.setString(0, "Izi");
  
  // 命名参数列表
  Query q = sess.createQuery("from DomesticCat cat where cat.name in (:namesList)");
  q.setParameterList("namesList", names);
  
  // 分页查询
  Query q = sess.createQuery("from DomesticCat cat");
  q.setFirstResult(20);
  q.setMaxResults(10);
  List cats = q.list();

 

      //删除元素

      Query q = sess.createQuery("from TOrder o where o.id = '123456'");

      q.executeUpdate();

四. 与spring结合

       HibernateTemplate提供持久层访问模板化,使用HibernateTemplate无须实现特定接口,它只需要提供一个SessionFactory的引用,就可执行持久化操作。SessionFactoyr对象可通过构造参数传入,或通过设值方式传入。

对于在Web应用,通常启动时自动加载ApplicationContextSessionFactoryDAO对象都处在Spring上下文管理下,因此无须在代码中显式设置,可采用依赖注入解耦SessionFactoryDAO,依赖关系通过配置文件来设置,如下所示:

 

看我的Webwork项目总结三。呵呵。。。

原创粉丝点击