📄 teacherdaoimpl.java
字号:
/* * TeacherDaoImpl.java * * Created on 2006年5月20日, 下午8:24 * * To change this template, choose Tools | Template Manager * and open the template in the editor. */package enova.orm.hibernate.daoImpl;import enova.dao.*;import enova.pojo.*;import java.util.*;import org.hibernate.*;import enova.util.*;/** * * @author vlinux */public class TeacherDaoImpl implements TeacherDao{ public Teacher get(Integer id) throws DataAccessException{ try{ Session session = HibernateUtil.currentSession(); List list = session.createQuery("from Teacher where id=:id").setParameter("id",id).list(); return list.isEmpty()?null:(Teacher)list.get(0); }catch(HibernateException he){ throw new DataAccessException(he.toString()); }finally{ HibernateUtil.closeSession(); } } public void updateOrInsert(Teacher teacher) throws RecordExistException, DataAccessException{ try{ Session session = HibernateUtil.currentSession(); if( teacher.getId()==null ){ List list = session.createQuery("from Teacher where username=:username") .setParameter("username",teacher.getUsername()).list(); if( !list.isEmpty() ) throw new RecordExistException("the teacher's username was existed"); } Transaction tran = session.beginTransaction(); session.saveOrUpdate(teacher); tran.commit(); }catch(HibernateException he){ throw new DataAccessException(he.toString()); }finally{ HibernateUtil.closeSession(); } } public void delete(Integer id) throws DataAccessException{ try{ Session session = HibernateUtil.currentSession(); Transaction tran = session.beginTransaction(); session.createQuery("delete from Teacher where id=:id") .setParameter("id",id).executeUpdate(); tran.commit(); }catch(HibernateException he){ throw new DataAccessException(he.toString()); }finally{ HibernateUtil.closeSession(); } } public Teacher loginVerify(String username,String password) throws DataAccessException{ try{ Session session = HibernateUtil.currentSession(); List list = session.createQuery("from Teacher where username=:username and password=:password") .setParameter("username",username) .setParameter("password",password) .list(); return list.isEmpty()?null:(Teacher)list.get(0); }catch(HibernateException he){ throw new DataAccessException(he.toString()); }finally{ HibernateUtil.closeSession(); } } public List getByNameAndUsername(String name,String username) throws DataAccessException{ try{ Session session = HibernateUtil.currentSession(); return session.createQuery("from Teacher where name like :name and username =:username") .setString("name","%"+name+"%") .setParameter("username",username) .list(); }catch(HibernateException he){ throw new DataAccessException(he.toString()); }finally{ HibernateUtil.closeSession(); } } public List getByNameSortId(String name) throws DataAccessException{ try{ Session session = HibernateUtil.currentSession(); return session.createQuery("from Teacher where name like :name order by id") .setString("name","%"+name+"%") .list(); }catch(HibernateException he){ throw new DataAccessException(he.toString()); }finally{ HibernateUtil.closeSession(); } } public List getByUsernameSortName(String username) throws DataAccessException{ try{ Session session = HibernateUtil.currentSession(); return session.createQuery("from Teacher where username=:username order by name") .setParameter("username",username) .list(); }catch(HibernateException he){ throw new DataAccessException(he.toString()); }finally{ HibernateUtil.closeSession(); } } public void changePassword(String username,String oldPassword,String newPassword) throws DataAccessException{ try{ Session session = HibernateUtil.currentSession(); Transaction tran = session.beginTransaction(); session.createQuery("update from Teacher set password=:newPassword where username=:username and password=:oldPassword") .setParameter("newPassword",newPassword) .setParameter("oldPassword",oldPassword) .setParameter("username",username) .executeUpdate(); tran.commit(); }catch(HibernateException he){ throw new DataAccessException(he.toString()); }finally{ HibernateUtil.closeSession(); } } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -