rulesdaoimpl.java

来自「实现图书的借阅和管理信息化」· Java 代码 · 共 131 行

JAVA
131
字号
package com.moonman.libraryManager.model.daoImpl;

import java.sql.SQLException;
import java.util.List;

import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.springframework.dao.DataAccessResourceFailureException;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import com.moonman.libraryManager.model.dao.RulesDAO;
import com.moonman.libraryManager.model.vo.Place;
import com.moonman.libraryManager.model.vo.Rules;

public class RulesDAOImpl extends HibernateDaoSupport implements RulesDAO {

	/**
	 * 查询所有的规则信息
	 */
	public List<Rules> getRules() {
		List<Rules> lst = (List<Rules>) this.getHibernateTemplate()
				.executeFind(new HibernateCallback() {
					public Object doInHibernate(Session session)
							throws HibernateException, SQLException {
						Query query = session.createQuery("from Rules");
						return query.list();
					}
				});
		return lst;
	}

	// 获得官舱地信息
	public List<Place> getPlaces() {
		List<Place> lst = (List<Place>) this.getHibernateTemplate()
				.executeFind(new HibernateCallback() {
					public Object doInHibernate(Session session)
							throws HibernateException, SQLException {
						Query query = session.createQuery("from Place");
						return query.list();
					}
				});
		return lst;
	}

	/**
	 * 添加一个规则实体
	 */
	public boolean addRule(Rules rule) {
		Session session = this.getSession();
		try {
			session.save(rule);
			return true;
		} catch (HibernateException e) {
			e.printStackTrace();
		} finally {
			session.close();
		}
		return false;
	}

	/**
	 * 根据编号查询规则信息
	 */
	public Rules getRuleById(final int ruleId) {
		Rules rule = (Rules) this.getHibernateTemplate().execute(
				new HibernateCallback() {
					public Object doInHibernate(Session session)
							throws HibernateException, SQLException {
						Object obj = session.get(Rules.class, ruleId);
						return obj;
					}
				});
		return rule;
	}

	/**
	 * 更新规则信息
	 * 
	 * @param rule
	 * @return
	 */
	public boolean modifyRule(Rules rule) {
		Session session = this.getSession();
		Transaction tx = session.beginTransaction();
		try {
			session.update(rule);
			tx.commit();
			return true;
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			if (tx != null) {
				tx.rollback();
			}
		} finally {
			session.close();
		}
		return false;
	}

	/**
	 * 根据编号删除规则信息
	 * 
	 * @param ruleId
	 * @return
	 */
	public boolean deleteRuleByRuleId(String ruleId) {
		Session session = this.getSession();
		Transaction tx = session.beginTransaction();
		try {
			Query query = session.createQuery(
					"delete from Rules where ruleId=?").setString(0, ruleId);
			int flag = query.executeUpdate();
			tx.commit();
			return flag > 0;
		} catch (HibernateException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			if (tx != null) {
				tx.rollback();
			}
		} finally {
			session.close();
		}
		return false;
	}
}

⌨️ 快捷键说明

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