borrowdaoimpl.java
来自「一个基本的图书馆管理系统」· Java 代码 · 共 184 行
JAVA
184 行
package c18.dao;
import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import c18.entity.Borrow;
import c18.entity.PreBorrow;
import c18.helper.PageBean;
import c18.helper.PageResult;
public class BorrowDaoImpl extends PageDao implements BorrowDao {
/**
* 日志操作对象
*/
private static final Log log = LogFactory.getLog(BorrowDaoImpl.class);
/**
* 以会话对象作参数的构造器
* @param session
*/
public BorrowDaoImpl(Session session){
this.session = session;
}
public PreBorrow getPreBorrow(int preBorrowNo) throws HibernateException {
//得到对象
return (PreBorrow)session.get(PreBorrow.class, new Integer(preBorrowNo));
}
public PageResult getPreBorrowsByUser(int userNo, PageBean pageBean)
throws HibernateException {
//组成查询sql
String sql = "from PreBorrow preBorrow,Book book where preBorrow.bookNo=book.bookNo and preBorrow.userNo=? order by preBorrow.preBorrowTime desc";
//输出日志信息
log.debug("getPreBorrowsByUser:" + sql);
log.debug("userNo:" + userNo);
PageResult pageresult = new PageResult();
//生成查询对象
Query query = session.createQuery(sql);
query.setInteger(0, new Integer(userNo));
//设置分页查询数
query.setFirstResult((pageBean.getPage() - 1) * pageBean.getPageSize());
query.setMaxResults(pageBean.getPageSize());
//得到结果
pageresult.setResultList(query.list());
//查询总数
if(pageBean.getCount() <= 0){
pageBean.setCount(getCount(sql, new Object[]{new Integer(userNo)}));
}
//设置分页信息
pageresult.setPageBean(pageBean);
//得到查询列表
return pageresult;
}
public void removePreBorrow(PreBorrow preBorrow) throws HibernateException {
//删除对象
session.delete(preBorrow);
}
public void savePreBorrow(PreBorrow preBorrow) throws HibernateException {
//保存对象
session.save(preBorrow);
}
public void updatePreBorrow(PreBorrow preBorrow) throws HibernateException {
//更新对象
session.update(preBorrow);
}
public PreBorrow getPreBorrowByStatus(int userNo, int bookNo, int status) throws HibernateException {
//组成查询sql
String sql = "from PreBorrow preBorrow where preBorrow.userNo=? and preBorrow.bookNo=? and preBorrow.status=? order by preBorrow.preBorrowTime desc";
//输出日志信息
log.debug("getPreBorrowsByUser:" + sql);
log.debug("userNo:" + userNo);
log.debug("bookNo:" + bookNo);
log.debug("status:" + status);
//生成查询对象
Query query = session.createQuery(sql);
query.setInteger(0, new Integer(userNo));
query.setInteger(1, new Integer(bookNo));
query.setInteger(2, new Integer(status));
List list = query.list();
if(list != null && list.size() > 0){
return (PreBorrow)list.get(0);
}
return null;
}
public Borrow getBorrow(int borrowNo) throws HibernateException {
//得到对象
return (Borrow)session.get(Borrow.class, new Integer(borrowNo));
}
public void removeBorrow(Borrow borrow) throws HibernateException {
//删除对象
session.delete(borrow);
}
public void saveBorrow(Borrow borrow) throws HibernateException {
//保存对象
session.save(borrow);
}
public void updateBorrow(Borrow borrow) throws HibernateException {
//更新对象
session.update(borrow);
}
public Borrow getBorrowByPre(int preBorrowNo) throws HibernateException {
//组成查询sql
String sql = "from Borrow borrow where borrow.preBorrowNo=?";
//输出日志信息
log.debug("getPreBorrowsByUser:" + sql);
log.debug("preBorrowNo:" + preBorrowNo);
//生成查询对象
Query query = session.createQuery(sql);
query.setInteger(0, new Integer(preBorrowNo));
List list = query.list();
if(list != null && list.size() > 0){
return (Borrow)list.get(0);
}
return null;
}
public PageResult getBorrowsByUser(int userNo, PageBean pageBean) throws HibernateException {
//组成查询sql
String sql = "from Borrow borrow,PreBorrow preBorrow,Book book where borrow.preBorrowNo=preBorrow.preBorrowNo and preBorrow.bookNo=book.bookNo and preBorrow.userNo=? order by borrow.borrowTime desc";
//输出日志信息
log.debug("getPreBorrowsByUser:" + sql);
log.debug("userNo:" + userNo);
PageResult pageresult = new PageResult();
//生成查询对象
Query query = session.createQuery(sql);
query.setInteger(0, new Integer(userNo));
//设置分页查询数
query.setFirstResult((pageBean.getPage() - 1) * pageBean.getPageSize());
query.setMaxResults(pageBean.getPageSize());
//得到结果
pageresult.setResultList(query.list());
//查询总数
if(pageBean.getCount() <= 0){
pageBean.setCount(getCount(sql, new Object[]{new Integer(userNo)}));
}
//设置分页信息
pageresult.setPageBean(pageBean);
//得到查询列表
return pageresult;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?