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

📄 userdao.java

📁 ssh整合在一起的例子.适合初学者,希望对大家能有一定的帮助作用
💻 JAVA
字号:
package com.softdevelopstudio.dao;

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

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.hibernate.HibernateException;
import org.hibernate.LockMode;
import org.hibernate.Query;
import org.hibernate.Session;
import org.springframework.context.ApplicationContext;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import com.softdevelopstudio.domain.User;
import com.softdevelopstudio.util.SystemUtil;

/**
 * Data access object (DAO) for domain model class User.
 * 
 * @see com.softdevelopstudio.domain.User
 * @author MyEclipse - Hibernate Tools
 */
public class UserDAO extends HibernateDaoSupport implements IUserDAO {

	private static final Log log = LogFactory.getLog(UserDAO.class);

	// property constants
	public static final String USERNAME = "username";

	public static final String PASSWORD = "password";

	protected void initDao() {
		// do nothing
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see com.softdevelopstudio.dao.IUserDAO#save(com.softdevelopstudio.domain.User)
	 */
	public void save(User transientInstance) {
		log.debug("saving User instance");
		try {
			getHibernateTemplate().save(transientInstance);
			log.debug("save successful");
		} catch (RuntimeException re) {
			log.error("save failed", re);
			throw re;
		}
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see com.softdevelopstudio.dao.IUserDAO#delete(com.softdevelopstudio.domain.User)
	 */
	public void delete(User persistentInstance) {
		log.debug("deleting User instance");
		try {
			getHibernateTemplate().delete(persistentInstance);
			log.debug("delete successful");
		} catch (RuntimeException re) {
			log.error("delete failed", re);
			throw re;
		}
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see com.softdevelopstudio.dao.IUserDAO#findById(java.lang.Integer)
	 */
	public User findById(java.lang.Integer id) {

		log.debug("getting User instance with id: " + id);
		try {
			User instance = (User) getHibernateTemplate().get(
					"com.softdevelopstudio.domain.User", id);
			return instance;
		} catch (RuntimeException re) {
			log.error("get failed", re);
			throw re;
		}
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see com.softdevelopstudio.dao.IUserDAO#findByProperty(java.lang.String,
	 *      java.lang.Object)
	 */
	public List findByProperty(String propertyName, Object value) {
		log.debug("finding User instance with property: " + propertyName
				+ ", value: " + value);
		try {
			String queryString = "from User as model where model."
					+ propertyName + "= ?";
			return getHibernateTemplate().find(queryString, value);
		} catch (RuntimeException re) {
			log.error("find by property name failed", re);
			throw re;
		}
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see com.softdevelopstudio.dao.IUserDAO#findByUsername(java.lang.Object)
	 */
	public List findByUsername(Object username) {
		return findByProperty(USERNAME, username);
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see com.softdevelopstudio.dao.IUserDAO#findByPassword(java.lang.Object)
	 */
	public List findByPassword(Object password) {
		return findByProperty(PASSWORD, password);
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see com.softdevelopstudio.dao.IUserDAO#merge(com.softdevelopstudio.domain.User)
	 */
	public User merge(User detachedInstance) {
		log.debug("merging User instance");
		try {
			User result = (User) getHibernateTemplate().merge(detachedInstance);
			log.debug("merge successful");
			return result;
		} catch (RuntimeException re) {
			log.error("merge failed", re);
			throw re;
		}
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see com.softdevelopstudio.dao.IUserDAO#attachDirty(com.softdevelopstudio.domain.User)
	 */
	public void attachDirty(User instance) {
		log.debug("attaching dirty User instance");
		try {
			getHibernateTemplate().saveOrUpdate(instance);
			log.debug("attach successful");
		} catch (RuntimeException re) {
			log.error("attach failed", re);
			throw re;
		}
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see com.softdevelopstudio.dao.IUserDAO#attachClean(com.softdevelopstudio.domain.User)
	 */
	public void attachClean(User instance) {
		log.debug("attaching clean User instance");
		try {
			getHibernateTemplate().lock(instance, LockMode.NONE);
			log.debug("attach successful");
		} catch (RuntimeException re) {
			log.error("attach failed", re);
			throw re;
		}
	}

	public List findPaginatedList(final String hsql, final int perpage,
			final int current) throws Exception {
		return getHibernateTemplate().executeFind(new HibernateCallback() {
			public Object doInHibernate(Session s) throws HibernateException,
					SQLException {
				Query query = s.createQuery(hsql);
				query.setFirstResult(perpage * current);
				query.setMaxResults(perpage);
				List list = query.list();
				return list;
			}
		});
	}

	public int count(String strCondition) {
		String hql = "select count(*) from User as user";
		if (SystemUtil.isNotNull(strCondition)) {
			hql += strCondition;
		}
		Long count = (Long) getHibernateTemplate().find(hql).listIterator()
				.next();
		return count.intValue();
	}

}

⌨️ 快捷键说明

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