zoukankan      html  css  js  c++  java
  • HibernateTemplate 查询

    Spring中常用的hql查询方法getHibernateTemplate()上 
      
      一、find(String queryString); 
      示例:this.getHibernateTemplate().find("from bean.User");
      返回所有User对象
      
      二、find(String queryString , Object value);
      示例:this.getHibernateTemplate().find("from bean.User u where u.name=?", "test");
      或模糊查询:this.getHibernateTemplate().find("from bean.User u where u.name like ?", "%test%");
      返回name属性值为test的对象(模糊查询,返回name属性值包含test的对象)
      
      三、find(String queryString, Object[] values);
      示例:String hql= "from bean.User u where u.name=? and u.password=?"
      this.getHibernateTemplate().find(hql, new String[]{"test", "123"});
      返回用户名为test并且密码为123的所有User对象
      
      ---------------------------------
      
      四、findByExample(Object exampleEntity)
      示例: User u=new User(); 
      u.setPassword("123");//必须符合的条件但是这两个条件时并列的(象当于sql中的and) 
      u.setName("bb"); 
      list=this.getHibernateTemplate().findByExample(u,start,max); 
      返回:用户名为bb密码为123的对象
      
      五、findByExample(Object exampleEntity, int firstResult, int maxResults)
      示例: User u=new User(); 
      u.setPassword("123");//必须 符合的条件但是这两个条件时并列的(象当于sql中的and) 
      u.setName("bb"); 
      list=this.getHibernateTemplate().findByExample(u,start,max); 
      返回:满足用户名为bb密码为123,自start起共max个User对象。(对象从0开始计数) 
      
      六、findByNamedParam(String queryString , String paramName , Object value)
      使用以下语句查询: 
      String queryString = "select count(*) from bean.User u where u.name=:myName"; 
      String paramName= "myName";
      String value= "xiyue";
      this.getHibernateTemplate().findByNamedParam(queryString, paramName, value); 
      System.out.println(list.get(0)); 
      返回name为xiyue的User对象的条数
      
      七、findByNamedParam(String queryString , String[] paramName , Object[] value)
      示例: String queryString = "select count(*) from bean.User u where u.name=:myName and u.password=:myPassword"; 
      String[] paramName= new String[]{"myName", "myPassword"};
      String[] value= new String[]{"xiyue", "123"};
      this.getHibernateTemplate().findByNamedParam(queryString, paramName, value);
      返回用户名为xiyue密码为123的User对象
      
      八、findByNamedQuery(String queryName)
      
     

     示例: 1、首先需要在User.hbm.xml中定义命名查询
      
      <query name="queryAllUser"> 
      <![from User]]> 
      </query>  
    
    
        2、使用查询:  
      this.getHibernateTemplate().findByNamedQuery("queryAllUser");

      
      九、findByNamedQuery(String queryName, Object value) 
      
      

    示例: 1、首先需要在User.hbm.xml中定义命名查询 
    
      <query name="queryByName"> 
     <![from User where u.name = ?]]> 
     </query>  
      2、使用查询:   
      this.getHibernateTemplate().findByNamedQuery("queryByName", "test"); 
  • 相关阅读:
    rinex4.0
    基于 Android NDK 的学习之旅目录
    基于设计模式的学习之旅目录
    基于设计模式的学习之旅中介者(附源码)
    基于设计模式的学习之旅观察者模式(附源码)
    基于设计模式的学习之旅责任链(附源码)
    基于设计模式的学习之旅访问者模式(附源码)
    基于设计模式的学习之旅状态模式(附源码)
    基于设计模式的学习之旅命令模式(附源码)
    基于设计模式的学习之旅享元模式(附源码)
  • 原文地址:https://www.cnblogs.com/toSeeMyDream/p/4510517.html
Copyright © 2011-2022 走看看