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

📄 userdao.java

📁 基于struts+hibernate的电子商务网站。可运行。数据库mysql
💻 JAVA
字号:
package tarena.dao;

import java.util.List;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.hibernate.Hibernate;
import org.hibernate.HibernateException;
import org.hibernate.LockMode;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.criterion.Example;

import tarena.entity.User;

/**
 * Data access object (DAO) for domain model class User.
 * 
 * @see tarena.entity.User
 * @author MyEclipse Persistence Tools
 */
@SuppressWarnings("unchecked")
public class UserDAO extends BaseHibernateDAO {
	private static final Log log = LogFactory.getLog(UserDAO.class);

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

	public static final String PASSWORD = "password";

	public static final String SEX = "sex";

	public static final String NICKNAME = "nickname";

	public static final String EMAIL = "email";

	public static final String EMAILSECRET = "emailsecret";

	public static final String MOBILE = "mobile";

	public static final String PHONE = "phone";

	public static final String HOMEPAGE = "homepage";

	public static final String COMEFROM = "comefrom";

	public static final String MSN = "msn";

	public static final String QQ = "qq";

	public static final String SKYPE = "skype";

	public static final String ICQ = "icq";

	public static final String YAHOO = "yahoo";

	public static final String SELFSHOW = "selfshow";

	public static final String SIGNATURE = "signature";

	public static final String USESIGN = "usesign";

	public static final String USEPORTRAIT = "useportrait";

	public static final String PORTRAIT = "portrait";

	public static final String PORTRAITADDRESS = "portraitaddress";

	public static final String PORTRAITWIDTH = "portraitwidth";

	public static final String PORTRAITHEIGHT = "portraitheight";

	public static final String ANSWER = "answer";

	public static final String TOPICNUM = "topicnum";

	public static final String POSTNUM = "postnum";

	public static final String TIPWAVE = "tipwave";

	public static final String RECEIVEEMAIL = "receiveemail";

	public static final String HIDEN = "hiden";

	public static final String STATE = "state";

	public static final String MEDAL = "medal";

	public static final String DOUNUM = "dounum";

	public static final String FORUMPOINT = "forumpoint";

	public static final String PAYPOINT = "paypoint";

	public static final String READACCESS = "readaccess";

	/*private Session session = null;
	private Transaction transaction = null;*/
	
	public UserDAO() {
		/*session = getSession();
		transaction = session.beginTransaction();*/
	}
	
	/**
	 * 获得某用户名的密码。
	 * @param username 用户名
	 * @return 返回该用户名的密码
	 */
	public String getPassword(String username){
		Session session = getSession();
		String hql = "select u.password from User u where u.username='"+username+"'";
		try {
			Query query = session.createQuery(hql);
				return query.list().get(0).toString();
		} catch (HibernateException e) {
			return null;
		} finally{
			closeSession();
		}
	}
	/**
	 * 检测用户名为username的是否为本站的注册会员。
	 * @param username 用户名
	 * @return 返回注册否。
	 */
	public boolean isRegisterUser(String username){
		List<User> re = findByExample(new User(username));
		return (re!=null&&re.size()!=0);
	}
	
	public boolean isRegisterUser(String username,String password){
		List<User> re = findByExample(new User(username,password));
		return (re!=null||re.size()!=0);
	}
	
	public User findUserByUsername(String username){			
		try {
			User user = null;
			List list = findByUsername(username);
			if(list!=null && list.size()>0){
				user = (User)list.get(0);
			}
			getSession().flush();
			return user;						
		} catch (RuntimeException re) {			
			throw re;
		}
	}
	
	public void save(User transientInstance) {
		Session session = getSession();
		Transaction t = session.beginTransaction();
		try {
			session.saveOrUpdate(transientInstance);
			t.commit();			
		} catch (RuntimeException re) {
			t.rollback();
			throw re;
		} finally{
			closeSession();
		}
	}

	public void delete(User persistentInstance) {
		Session session = getSession();
		Transaction t = session.beginTransaction();
		try {
			session.delete(persistentInstance);
			t.commit();			
		} catch (RuntimeException re) {
			t.rollback();
			throw re;
		} finally{
			closeSession();
		}		
	}

	public User findById(java.lang.Integer id) {
		Session session = getSession();
		try {
			User instance = (User) session.get("tarena.entity.User", id);
			return instance;
		} catch (RuntimeException re) {
			return null;
		}  finally{
			closeSession();
		}	
	}
	
	public Integer countPosts(Integer id){
		String sql = "select count(distinct id) re from post where uid=? group by uid ";
		return (Integer)getSession()
			   .createSQLQuery(sql)
			   .addScalar("re",Hibernate.INTEGER)
			   .setInteger(0, id)
			   .uniqueResult();
	}

	public List findByExample(User instance) {
		Session session = getSession();
		try {
			List results = session.createCriteria("tarena.entity.User")
					.add(Example.create(instance)).list();			
			return results;
		} catch (RuntimeException re) {
			return null;
		}  finally {
			closeSession();
		}	
	}

	public List findByProperty(String propertyName, Object value) {
		Session session = getSession();		
		try {
			String queryString = "from User as model where model."
					+ propertyName + "= ?";
			Query queryObject = session.createQuery(queryString);
			queryObject.setParameter(0, value);
			return queryObject.list();					
		} catch (RuntimeException re) {			
			throw re;
		} finally{
			closeSession();
		}			
	}

	public List findByUsername(Object username) {
		return findByProperty(USERNAME, username);
	}

	public List findByPassword(Object password) {
		return findByProperty(PASSWORD, password);
	}

	public List findBySex(Object sex) {
		return findByProperty(SEX, sex);
	}

	public List findByNickname(Object nickname) {
		return findByProperty(NICKNAME, nickname);
	}

	public List findByEmail(Object email) {
		return findByProperty(EMAIL, email);
	}

	public List findByEmailsecret(Object emailsecret) {
		return findByProperty(EMAILSECRET, emailsecret);
	}

	public List findByMobile(Object mobile) {
		return findByProperty(MOBILE, mobile);
	}

	public List findByPhone(Object phone) {
		return findByProperty(PHONE, phone);
	}

	public List findByHomepage(Object homepage) {
		return findByProperty(HOMEPAGE, homepage);
	}

	public List findByComefrom(Object comefrom) {
		return findByProperty(COMEFROM, comefrom);
	}

	public List findByMsn(Object msn) {
		return findByProperty(MSN, msn);
	}

	public List findByQq(Object qq) {
		return findByProperty(QQ, qq);
	}

	public List findBySkype(Object skype) {
		return findByProperty(SKYPE, skype);
	}

	public List findByIcq(Object icq) {
		return findByProperty(ICQ, icq);
	}

	public List findByYahoo(Object yahoo) {
		return findByProperty(YAHOO, yahoo);
	}

	public List findBySelfshow(Object selfshow) {
		return findByProperty(SELFSHOW, selfshow);
	}

	public List findBySignature(Object signature) {
		return findByProperty(SIGNATURE, signature);
	}

	public List findByUsesign(Object usesign) {
		return findByProperty(USESIGN, usesign);
	}

	public List findByUseportrait(Object useportrait) {
		return findByProperty(USEPORTRAIT, useportrait);
	}

	public List findByPortrait(Object portrait) {
		return findByProperty(PORTRAIT, portrait);
	}

	public List findByPortraitaddress(Object portraitaddress) {
		return findByProperty(PORTRAITADDRESS, portraitaddress);
	}

	public List findByPortraitwidth(Object portraitwidth) {
		return findByProperty(PORTRAITWIDTH, portraitwidth);
	}

	public List findByPortraitheight(Object portraitheight) {
		return findByProperty(PORTRAITHEIGHT, portraitheight);
	}

	public List findByAnswer(Object answer) {
		return findByProperty(ANSWER, answer);
	}

	public List findByTopicnum(Object topicnum) {
		return findByProperty(TOPICNUM, topicnum);
	}

	public List findByPostnum(Object postnum) {
		return findByProperty(POSTNUM, postnum);
	}

	public List findByTipwave(Object tipwave) {
		return findByProperty(TIPWAVE, tipwave);
	}

	public List findByReceiveemail(Object receiveemail) {
		return findByProperty(RECEIVEEMAIL, receiveemail);
	}

	public List findByHiden(Object hiden) {
		return findByProperty(HIDEN, hiden);
	}

	public List findByState(Object state) {
		return findByProperty(STATE, state);
	}

	public List findByMedal(Object medal) {
		return findByProperty(MEDAL, medal);
	}

	public List findByDounum(Object dounum) {
		return findByProperty(DOUNUM, dounum);
	}

	public List findByForumpoint(Object forumpoint) {
		return findByProperty(FORUMPOINT, forumpoint);
	}

	public List findByPaypoint(Object paypoint) {
		return findByProperty(PAYPOINT, paypoint);
	}

	public List findByReadaccess(Object readaccess) {
		return findByProperty(READACCESS, readaccess);
	}

	public List findAll() {
		Session session = getSession();
		try {
			String queryString = "from User";
			Query queryObject = session.createQuery(queryString);
			return queryObject.list();
		} catch (RuntimeException re) {
			return null;
		}  finally{
			closeSession();
		}	
	}

	
}

⌨️ 快捷键说明

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