2024年5月11日发(作者:)

Hibernate 中的HQL查询的总结

一.Spring+Hibernate 中

1.保存一个实体

getHibernateTemplate().save(user);

2.根据id号从数据库中查询到一个实体

User user=(User)getHibernateTemplate().load(,fromUserId));

3.删除一个实体

方法一:直接删除getHibernateTemplate().delete((Message);

方法二:嵌套一个根据id号查询到一个实体,再删除

getHibernateTemplate().delete((Message)getHibernateTemplate().load(Messa

, msgId));

4.查询符合添加的记录的个数,函数count(*)

Object obj = getSession().createQuery("select count(*) from Message where

="+recepUserId+" and msgType=1")

.uniqueResult();//表示只返回一个结果

5.修改一个实体

getHibernateTemplate().update(message);

6.设定查询记录的起始位置和得到的记录数

List list = getSession().createQuery(

"from Message where (="+userId+" or ="+userId+")

and msgType=2 order by id desc ").setMaxResults(想要得到的记录

数).setFirstResult(取得记录的起点).list();

7. intValue()返回的结果是整数

int msgCount=((Long)getSession().createQuery("select count(*) from Message

where from ="+userId+" or

="+userId).uniqueResult()).intValue();

二.只有Hibernate 中

1.保存数据

/**