📄 messagedaohibernate.java
字号:
package org.yeeku.dao.impl;
import org.yeeku.model.*;
import org.yeeku.dao.*;
import org.hibernate.Session;
import java.io.Serializable;
import java.util.List;
/*
* @author yeeku.H.lee kongyeeku@163.com
* @version 1.0
* <br>Copyright (C), 2005-2008, yeeku.H.Lee
* <br>This program is protected by copyright laws.
* <br>Program Name:
* <br>Date:
*/
public class MessageDaoHibernate implements MessageDao
{
/**
* 根据主键加载消息
* @param sess 持久化操作所需要的Hiberate Session
* @param id 需要加载的消息ID
* @return 加载的消息
*/
public Message get(Session sess, int id)
{
return (Message)sess.load(Message.class , id);
}
/**
* 保存消息
* @param sess 持久化操作所需要的Hiberate Session
* @param m 需要保存的消息
* @retun 保存消息的主键
*/
public int save(Session sess, Message m)
{
sess.save(m);
return m.getId();
}
/**
* 删除消息
* @param sess 持久化操作所需要的Hiberate Session
* @param m 需要删除的消息
*/
public void delete(Session sess, Message m)
{
sess.delete(m);
}
/**
* 删除消息
* @param sess 持久化操作所需要的Hiberate Session
* @param id 需要删除的消息ID
*/
public void delete(Session sess, int id)
{
sess.delete(get(sess , id));
}
/**
* 修改消息
* @param sess 持久化操作所需要的Hiberate Session
* @param m 需要修改的消息
*/
public void update(Session sess, Message m)
{
sess.saveOrUpdate(m);
}
/**
* 查询指定用户、指定页的消息
* @param sess 持久化操作所需要的Hiberate Session
* @param pageNo 需要查询的指定页
* @param pageSize 每页显示的消息数
* @return 查询到的消息集合
*/
public List findAllByPage(Session sess, int pageNo , int pageSize)
{
int offset = (pageNo - 1) * pageSize;
return sess.createQuery("from Message m order by m.id desc")
.setFirstResult(offset)
.setMaxResults(pageSize)
.list();
}
/**
* 查询消息的条数
* @param sess 持久化操作所需要的Hiberate Session
* @return 消息条数
*/
public long findCount(Session sess)
{
Object obj = sess.createQuery("select count(m.id) from Message as m")
.uniqueResult();
//System.out.println(obj);
return (Long)obj;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -