persondaoimpl.java

来自「Struts、Spring、Hibernate实现的登陆程序」· Java 代码 · 共 52 行

JAVA
52
字号
package org.darkness.sshlogin.dao.impl;

import org.darkness.sshlogin.dao.PersonDAO;
import org.darkness.sshlogin.vo.Person;
import org.hibernate.Query;
import org.hibernate.Session;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import org.hibernate.Transaction;

public class PersonDAOImpl extends HibernateDaoSupport implements PersonDAO {

	public boolean isLogin(Person person) throws Exception {
		boolean flag = false;
		String hql = "FROM Person AS p WHERE p.id=? AND p.password=?";
		Query q = this.getSession().createQuery(hql);
		q.setString(0,person.getId());
		q.setString(1, person.getPassword());
		Person per = (Person)q.uniqueResult();
		if(per != null){
			flag = true;
			person.setName(per.getName());
		}
		return flag;
	}

	public void register(Person person) throws Exception {
		Session session = this.getSession();
		Transaction tx = session.beginTransaction();
		session.save(person);
		tx.commit();
		session.close();
	}
	
	public void update(Person person) throws Exception {
		String hql = "UPDATE Person SET name=?,password=? where id=?";
		Query q = this.getSession().createQuery(hql);
		q.setString(0, person.getName());
		q.setString(1, person.getPassword());
		q.setString(2, person.getId());
		q.executeUpdate();
	}
	
	public void delete(String id) throws Exception {
		String hql = "DELETE FROM Person WHERE id=?";
		Query q = this.getSession().createQuery(hql);
		q.setString(0, id);
		q.executeUpdate();
	}
	
}

⌨️ 快捷键说明

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