📄 logindaoimpl.java
字号:
package com.dao.hibernate;
import java.util.Iterator;
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;
import com.vo.struts.form.EnrolForm;
public class LoginDAOImpl implements LoginDAO {
// 在hibernate中,所有的操作都是通过Session完成,此Session不同于jsp中的Session
private Session session = null;
private EnrolForm ef = null;
// 在构造方法之中实例化Session对象
public LoginDAOImpl() {
// 找到hibernate配置
Configuration config = new Configuration().configure();
// 从配置中取出SessionFactory
SessionFactory factory = config.buildSessionFactory();
// 从SessionFactory中取出一个Session
this.session = factory.openSession();
}
// 用户登陆查询
public EnrolForm queryByUsername(String username, String password) {
try {
// 使用hiberbate查询语言
String hql = "from EnrolForm as ef where ef.username = ?";
// 通过Query接口查询
Query q = this.session.createQuery(hql);
q.setString(0, username);
List list = q.list();
Iterator iter = list.iterator();
if (iter.hasNext()) {
ef = (EnrolForm) iter.next();
if (username.equals(ef.getUsername())
&& password.equals(ef.getPassword())) {
return ef;
}
}
} catch (Exception e) {
e.printStackTrace();
} finally {
// 关闭Session
this.session.close();
}
return null;
}
// 用户注册新增操作
public Boolean insert(EnrolForm enrol) {
try {
// 开始事物
Transaction tran = this.session.beginTransaction();
// 执行语句
this.session.save(enrol);
// 提交事物
tran.commit();
return true;
} catch (Exception e) {
e.printStackTrace();
} finally {
// 关闭Session
this.session.close();
}
return false;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -