StudentDAOImp.java
上传用户:nbxinmin
上传日期:2021-10-09
资源大小:46k
文件大小:2k
源码类别:

Internet/IE编程

开发平台:

Java

  1. package com.xdf.exams.dao.hibernate;
  2. import java.util.List;
  3. import org.hibernate.Criteria;
  4. import org.hibernate.Query;
  5. import org.hibernate.criterion.Order;
  6. import org.hibernate.criterion.Projections;
  7. import org.hibernate.criterion.Restrictions;
  8. import com.xdf.exams.bean.Student;
  9. import com.xdf.exams.dao.IStudentDAO;
  10. public class StudentDAOImp extends BaseDAO implements IStudentDAO{
  11. public List findAllStudent() {
  12. return getSession()
  13. .createQuery("from Student order by id")
  14. .list();
  15. }
  16. public List findAllStudent(int pageno, int pagesize) {
  17. return getSession()
  18. .createQuery("from Student order by id")
  19. .setFirstResult((pageno-1)*pagesize)
  20. .setMaxResults(pagesize)
  21. .list();
  22. }
  23. public List findStudentByName(String name, int pageno, int pagesize) {
  24. Criteria c = getSession().createCriteria(Student.class);
  25. if (name!=null&&!name.equals("")) {
  26. c.add(Restrictions.like("name","%"+name+"%"));
  27. }
  28. c.addOrder(Order.asc("studentid"));
  29. c.setFirstResult((pageno-1)*pagesize);
  30. c.setMaxResults(pagesize);
  31. return c.list();
  32. }
  33. public int findStudentnum() {
  34. Query q = getSession().createQuery("select count(*) from Student");
  35. List list = q.list();
  36. Integer a = (Integer)list.get(0);
  37. return a.intValue();
  38. }
  39. public int findStudentnumByName(String name) {
  40. Criteria c = getSession().createCriteria(Student.class);
  41. if (name!=null&&!name.equals("")) {
  42. c.add(Restrictions.like("name","%"+name+"%"));
  43. }
  44. c.setProjection(Projections.rowCount());
  45. List list =c.list();
  46. Integer a = (Integer)list.get(0);
  47. return a.intValue();
  48. }
  49. public Student studentlogin(String username, String password) {
  50. Query q = getSession().createQuery("from Student t where t.username=? and t.password=?");
  51. q.setString(0,username);
  52. q.setString(1,password);
  53. List list = q.list();
  54. if(list.size()==0)
  55. return null;
  56. else
  57. return (Student)list.get(0);
  58. }
  59. public boolean checkStudentNameExists(String name,Long id) {
  60. Criteria c = getSession().createCriteria(Student.class);
  61. c.add(Restrictions.eq("username",name));
  62. if(id!=null) {
  63. c.add(Restrictions.ne("studentid",id));
  64. }
  65. List list = c.list();
  66. if(list.size()==0) {
  67. return false;
  68. }else {
  69. return true;
  70. }
  71. }
  72. }