- Spring中常用的hql查询方法(getHibernateTemplate())
- find(String hql);
- find(String hql,Object arg);
- find(hql,arg0,arg1);
- find(String hql,Object[] arg);
- ----------------------------------------------
- findByExample(Object obj,int start,int max)
- public List searchAll(){
- List list=null;
- try{
- User u=new User();
- u.setPassword("123");//必须 符合的条件但是这两个条件时并列的(象当于sql中的and)
- u.setName("bb");
- list=this.getHibernateTemplate().findByExample(u,start,max);
- }catch(RuntimeException re){
- throw re;
- }
- return list;
- }
- ---------------------------------------------------
- findByNamedParam的使用
- 数据库中有一表Member(id,email),已经有一条记录('123','sdf@sfd.com');
- 使用以下语句查询:
- String hql = "select count(*) from Member where email=:email and id!=:id";
- List list = this.support.getHibernateTemplate().findByNamedParam(hql,new String[] { "email", "id" },new Object[] { "sdf@sfd.com", "123"});
- System.out.println(list.get(0));
- -------------------------------------------------------
- findByNamedQueryAndNamedParam的使用
- public User loadByName(String account) throws DAOException{
- List result = getHibernateTemplate().findByNamedQueryAndNamedParam("loadUserByName", "userAccount", account);
- if (result != null ) {
- return (User)result;
- } else {
- return null;
- }
- }
- 这是在user.hbm.xml中的代码:
- <query name="loadUserByName">
- <![CDATA[select user from user as user where user.name=:userAccount]]>
- </query>
Spring中常用的hql查询方法(getHibernateTemplate())
最新推荐文章于 2020-11-23 10:21:28 发布