📄 30fab9f41047001c1623b88abf704101
字号:
package com.bjsxt.drp.business.itemmgr.manager;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.bjsxt.drp.business.itemmgr.model.Item;
import com.bjsxt.drp.business.util.HibernateUtils;
import com.bjsxt.drp.business.util.PageModel;
public class ItemManagerImpl extends HibernateDaoSupport implements ItemManager {
/**
* 添加物料
* @param item
*/
public void addItem(Item item) {
this.getHibernateTemplate().save(item);
}
/**
* 修改物料
* @param item
*/
public void modifyItem(Item item) {
this.getHibernateTemplate().update(item);
}
/**
* 删除物料
* @param itemNoList 物料代码数组
*/
public void deleteItemById(String[] itemNoList) {
for (int i =0; i < itemNoList.length; i++) {
Item item = new Item();
item.setItemNo(itemNoList[i]);
this.getHibernateTemplate().delete(item);
}
}
/**
* 查询物料信息
*
* @param pageNo 第一页
* @param pageSize 每页显示多少条
* @param queryStr 查询条件
* @return Item对象集合
*/
public PageModel findAllItem(final int pageNo, final int pageSize, final String queryStr) {
PageModel pageModel = new PageModel();
List itemList = new ArrayList();
Query itemQuery = null;
if (queryStr == null || "".equals(queryStr)) {
//实现分页
this.getHibernateTemplate().executeFind(new HibernateCallback(){
public Object doInHibernate(Session session) throws HibernateException, SQLException {
List list = session.createQuery("from Item a order by a.itemNo")
.setFirstResult(((pageNo -1) * pageSize))
.setMaxResults(pageSize)
.list();
return list;
}
} );
}else {
//实现分页
this.getHibernateTemplate().executeFind(new HibernateCallback(){
public Object doInHibernate(Session session) throws HibernateException, SQLException {
List list = session.createQuery("from Item a where a.itemNo like ? or a.itemName like ? order by a.itemNo")
.setParameter(0, "%" + queryStr)
.setParameter(1, "%" + queryStr)
.setFirstResult(((pageNo -1) * pageSize))
.setMaxResults(pageSize)
.list();
return list;
}
} );
}
pageModel.setPageNo(pageNo);
pageModel.setPageSize(pageSize);
pageModel.setList(itemList);
pageModel.setTotalRecords(getTotalRecord(queryStr));
return pageModel;
}
/**
* 根据Id查询物料
* @param item
*/
public Item findItemById(String itemNo) {
return (Item)this.getHibernateTemplate().load(Item.class, itemNo);
}
/**
* 取得总记录数
*
* @param session
* @param queryStr
* @return
*/
private int getTotalRecord(Session session, String queryStr) {
Query itemQuery = null;
if (queryStr == null || "".equals(queryStr)) {
this.getHibernateTemplate().find("select count(*) from Item a");
}else {
this.getHibernateTemplate().find("select count(*) from Item a where a.itemNo like ? or a.itemName like ?",
new Object[]{"%" + queryStr, "%" + queryStr});
itemQuery = session.createQuery("select count(*) from Item a where a.itemNo like ? or a.itemName like ?")
.setParameter(0, "%" + queryStr)
.setParameter(1, "%" + queryStr);
}
Long totalRecord = (Long)itemQuery.uniqueResult();
return totalRecord.intValue();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -