package com.lh.dao;

import java.util.Calendar;

import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;

import com.lh.model.User;

/**
 * �����û�ע���¼��DAO������
 * @author LH
 */
public class UserDao {
	private static UserDao instance = null;
	/**
	 * ����һ��UserDaoʵ��
	 * @return
	 */
	public static UserDao getInstance(){
		if(instance==null) instance = new UserDao();
		return instance;
	}
	/**
	 * �����û�ע����Ϣ
	 * @param user
	 * @return
	 */

public boolean saveUser(User user){
	boolean result = false;//����Ƿ񱣴�ɹ�
	Session session = null;//����Sessionʵ��
	Transaction trans = null;//��������
	try{
		
		session = SessionFactoryProvider.getSession();//����Sessionʵ��
		trans=session.beginTransaction();//��ȡ����
		trans.begin();//��ʼ����
		session.save(user);//�������
		trans.commit();//�ύ����
		result=true;
	}catch(Exception ex){
		//�������쳣����ع�
		if(trans!=null&&trans.isActive()) trans.rollback();
		ex.printStackTrace();
	}finally{
		session.close();
	}
	return result;
}
	/**
	 * �޸��û�ע����Ϣ
	 * @param user
	 * @return
	 */
	public boolean updateUser(User user){
		boolean result = false;//����Ƿ񱣴�ɹ�
		Session session = null;//����Sessionʵ��
		Transaction trans = null;//��������
		try{
			//��SessionFactory�������ܻ�ȡSessionʵ��
			session = SessionFactoryProvider.getSession();
			trans=session.beginTransaction();//��ȡ����
			trans.begin();//��ʼ����
			session.update(user);//���¶���
			trans.commit();//�ύ����
			result=true;
		}catch(Exception ex){
			//�������쳣����ع�
			if(trans!=null&&trans.isActive()) trans.rollback();
			ex.printStackTrace();
		}
		return result;
	}
	/**
	 * ��ѯ�����û���Ϣ
	 * @return
	 */
	public User selectUserById(String userId){
		User user = null;
		Session session = null;
		try{
			//��SessionFactory�������ܻ�ȡSessionʵ��
			session = SessionFactoryProvider.getSession();
			Query query = session.createQuery("from User where userId=:id");
			query.setString("id", userId);
			//�Ӳ�ѯ�Ľ����л�ȡ��Userʵ��
			user = (User)query.list().get(0);
		}catch(Exception ex){
			ex.printStackTrace();
		}finally{
			session.close();//�ر�session
		}
		return user;
	}
	/**
	 * ��֤�û���¼
	 * @param userName���û���
	 * @param userPwd������
	 * @return
	 */
public boolean enter(String userName,String userPwd){
	boolean result = false;
	Session session = null;
	try{
		//��SessionFactory�������ܻ�ȡSessionʵ��
		session = SessionFactoryProvider.getSession();	
		//��ѯ�Ƿ��и��û���hql���
		String hql="select count(userId) from User where userName=:name and userPwd=:pwd";
		//����query����
		Query query=session.createQuery(hql);
		//�����û������
		query.setString("name", userName);
		//�����������
		query.setString("pwd", userPwd);
		//���ص�intֵ����ѯ�û��ĸ���
		int userCount=Integer.parseInt(query.list().get(0).toString());
		if(userCount==1) result = true;
	}catch(Exception ex){
		ex.printStackTrace();
	}finally{
		session.close();
	}
	return result;
}
	/**
	 * ����û������������û�����
	 * @param name �û���
	 * @param pwd ����
	 * @return
	 */
	
public User getUserByNameAndPwd(String name,String pwd){
	User user = null;
	Session session = null;
	try{
		session = SessionFactoryProvider.getSession();	//����Sessionʵ��
		String hql=" from User where userName=:name and userPwd=:pwd";//hql���
		Query query=session.createQuery(hql);//����query����
		query.setString("name", name);//�����û������
		query.setString("pwd", pwd);//�����������
		if(query.list()!=null&&query.list().size()>0){//�жϷ��ص�list�����Ƿ�����û���Ϣ����
			user=(User)query.list().get(0);
		}
	}catch(Exception ex){
		ex.printStackTrace();
	}finally{
		session.close();
	}
	return user;
}
	/**
	 * ����û�ע��������û���
	 * �жϸ��û��Ƿ����
	 * @param name
	 * @return ���ڷ���true,�����ڷ���false
	 */
	
public boolean getUserByName(String name){
	boolean result = false;
	Session session = null;
	try{	
		session = SessionFactoryProvider.getSession();	//����Sessionʵ��
		String hql=" from User where userName=:name";	//��ѯ�Ƿ��и��û���hql���
		Query query=session.createQuery(hql);			//����query����
		query.setString("name", name);					//�����û������
		if(query.list()!=null&&query.list().size()>0)	//��ݷ��ص�list���ϣ��ж��Ƿ���ڸ��û�
			result = true;
	}catch(Exception ex){
		ex.printStackTrace();
	}finally{
		session.close();
	}
	return result;
}
}
最近下载更多
过过成功尺寸  LV7 2021年12月22日
kiritoYCQ  LV5 2020年11月28日
dyihui  LV12 2020年11月19日
霖望1234  LV2 2020年7月18日
本机号码  LV2 2020年7月6日
秘制酒心巧克力  LV6 2020年6月19日
wangshangkun  LV2 2020年5月25日
木扬木  LV2 2020年4月25日
大杰打劫  LV8 2020年3月24日
gezongyuan  LV9 2020年1月7日
最近浏览更多
PISCESPLUS  LV5 2024年9月3日
ymrdhgv 2024年6月24日
暂无贡献等级
晴曛  LV6 2024年2月20日
xiquyiyuan  LV10 2024年1月12日
WBelong  LV8 2023年12月28日
Henew168  LV2 2023年12月4日
李朝磊  LV18 2023年10月23日
陆程江  LV2 2023年5月28日
uni-code_0123  LV1 2023年4月20日
ssmss951  LV3 2023年2月27日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友