useroperate.java

来自「webwork+hibernate用户注册示例源码」· Java 代码 · 共 67 行

JAVA
67
字号
package ww.register;

import java.util.List;

import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

public class UserOperate extends Base {

	private Session session = null;

	// 在构造方法中实例化session对象
	public UserOperate() {

		// 找到Hibernate配置
		Configuration config = new Configuration().configure();

		// 从配置中取出SessionFactory
		SessionFactory factory = config.buildSessionFactory();

		// 从SessionFactory中取出一个Session
		this.session = factory.openSession();
	}

	// 登录验证
	public User validateUser(String userid, String password) {

		// Session session=getSession();
		String hql = "from User u where u.userid=? and u.password=?";
		Query query = session.createQuery(hql);
		query.setParameter(0, userid);
		query.setParameter(1, password);
		List users = query.list();
		if (users.size() != 0) {
			User user = (User) users.get(0);
			return user;
		}
		return null;
	}

	public void saveUser(User user) {
		Transaction tran = this.session.beginTransaction();
		this.session.save(user);
		tran.commit();
		this.session.close();
	}

	public void update(User user) {
		Transaction tran = this.session.beginTransaction();
		String hql = "update User u set u.password=?,u.username=?,u.email=?,u.passwordtype=?,u.passwordanswer=? where u.userid=?";
		Query query = session.createQuery(hql);
		query.setParameter(0, user.getPassword());
		query.setParameter(1, user.getUsername());
		query.setParameter(2, user.getEmail());
		query.setParameter(3, user.getPasswordtype());
		query.setParameter(4, user.getPasswordanswer());
		query.setParameter(5, user.getUserid());
		query.executeUpdate();
		tran.commit();
		this.session.close();
	}

}

⌨️ 快捷键说明

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