⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 d08108381147001c1623b88abf704101

📁 尚学堂Java148班的spring的所有源码
💻
字号:
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) {
		List result = new ArrayList();
		if (queryStr == null || "".equals(queryStr)) {
			result = this.getHibernateTemplate().find("select count(*) from Item a");
		}else {
			result = this.getHibernateTemplate().find("select count(*) from Item a where a.itemNo like ? or a.itemName like ?", 
					                         new Object[]{"%" + queryStr, "%" + queryStr});
		}
		Long totalRecord = (Long)result.get(0);
		return totalRecord.intValue();
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -