琉夏123

导航

 

本周的任务完成情况:实现了管理员登录、老师登录、学生登录和注册功能,暂时没有什么困难。

项目目录如下:

 

 核心代码:

1、Servlet代码:

ExamService es = new ExamService();
 public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  doPost(request, response);
 }
 public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  request.setCharacterEncoding("utf-8");
  response.setContentType("text/html;charset=utf-8");
  String servletPath = request.getServletPath();
  String pathname = servletPath.substring(1, servletPath.length() - 3);
  System.out.println(pathname);
  switch (pathname) {
  case "adminlogin":
   adminLogin(request, response);
   break;
  case "studentlogin":
   studentLogin(request, response);
   break;
  case "studentadd":
   studentAdd(request, response);
   break;
  case "teacherlogin":
   teacherLogin(request, response);
   break;
  default:
   break;
  }
 }
 private void studentAdd(HttpServletRequest request, HttpServletResponse response)
   throws IOException, ServletException {
  String name = request.getParameter("name");
  String pwd = request.getParameter("pwd");
  String tel = request.getParameter("tel");
  StudentBean stuBean = new StudentBean(name, pwd);
  stuBean.setS_tel(tel);
  // 先用name查询数据库,有没有已经注册的账号,如果有,则不能注册
  int count1 = es.stuSel(stuBean);
  if (count1 > 0) {
   request.setAttribute("message", "该账户已经被注册了!");
   request.getRequestDispatcher("/register.jsp").forward(request, response);
  } else {
   int count2 = es.stuAdd(stuBean);
   if (count2 > 0) {
    PrintWriter out = response.getWriter();
    out.write("alert('注册成功')");
    response.sendRedirect("login.jsp");
   } else {
    request.setAttribute("name", name);
    request.setAttribute("pwd", pwd);
    request.setAttribute("tel", tel);
    request.setAttribute("message", "没有注册成功,请重新填写内容注册账户");
    request.getRequestDispatcher("/register.jsp").forward(request, response);
   }
  }
 }
 private void teacherLogin(HttpServletRequest request, HttpServletResponse response)
   throws IOException, ServletException {
  String teaname = request.getParameter("name");
  String teapwd = request.getParameter("pwd");
  TeacherBean teaBean = new TeacherBean(teaname, teapwd);
  int count = es.teaSel(teaBean);
  if (count > 0) {
   response.sendRedirect("index.jsp");
  } else {
   request.setAttribute("teaname", teaname);
   request.setAttribute("teapwd", teapwd);
   request.setAttribute("message", teaname + "账号不存在,请重新输入!");
   request.getRequestDispatcher("/adminlogin.jsp").forward(request, response);
  }
 }
 private void studentLogin(HttpServletRequest request, HttpServletResponse response)
   throws IOException, ServletException {
  String stuname = request.getParameter("name");
  String stupwd = request.getParameter("pwd");
  StudentBean stuBean = new StudentBean(stuname, stupwd);
  int count = es.stuSel(stuBean);
  if (count > 0) {
   response.sendRedirect("index.jsp");
  } else {
   request.setAttribute("stuname", stuname);
   request.setAttribute("stupwd", stupwd);
   request.setAttribute("message", stuname + "账号不存在,请重新输入!");
   request.getRequestDispatcher("/login.jsp").forward(request, response);
  }
 }
 private void adminLogin(HttpServletRequest request, HttpServletResponse response)
   throws IOException, ServletException {
  String name = request.getParameter("name");
  String pwd = request.getParameter("pwd");
  AdminBean adminBean = new AdminBean(name, pwd);
  int count = es.adminSel(adminBean);
  if (count > 0) {
   response.sendRedirect("index.jsp");
  } else {
   request.setAttribute("name", name);
   request.setAttribute("pwd", pwd);
   request.setAttribute("message", name + "账号不存在,请重新输入!");
   request.getRequestDispatcher("/login.jsp").forward(request, response);
  }
 }

   2、EmpDaoImp实现类代码:

public class ExamDaoImp implements ExamDao{
 public int adminSel(AdminBean adminBean) {
  int count = 0;
  Connection con = JDBCUtils.getCon();
  String name = adminBean.getT_name();
  String pwd = adminBean.getT_pwd();
  String sql = "select * from  t_admin where ad_name=? and ad_pwd=?";
  try {
   PreparedStatement pre = con.prepareStatement(sql);
   pre.setString(1, name);
   pre.setString(2, pwd);
   ResultSet rs = pre.executeQuery();
   while (rs.next()) {
    count = 1;
   }
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return count;
 }
 @Override
 public int stuSel(StudentBean stuBean) {
  int count = 0;
  Connection con = JDBCUtils.getCon();
  String name = stuBean.getS_name();
  String pwd = stuBean.getS_pwd();
  String sql = "select * from  t_student where s_name=? and s_pwd=?";
  try {
   PreparedStatement pre = con.prepareStatement(sql);
   pre.setString(1, name);
   pre.setString(2, pwd);
   ResultSet rs = pre.executeQuery();
   while (rs.next()) {
    count = 1;
   }
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return count;
 }
 @Override
 public int teaSel(TeacherBean teaBean) {
  int count = 0;
  Connection con = JDBCUtils.getCon();
  String name = teaBean.getName();
  String pwd = teaBean.getPwd();
  String sql = "select * from  t_teacher where ad_name=? and ad_pwd=?";
  try {
   PreparedStatement pre = con.prepareStatement(sql);
   pre.setString(1, name);
   pre.setString(2, pwd);
   ResultSet rs = pre.executeQuery();
   while (rs.next()) {
    count = 1;
   }
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return count;
 }
 @Override
 public int stuAdd(StudentBean stuBean) {
  int count = 0;
  Connection con = JDBCUtils.getCon();
  String name = stuBean.getS_name();
  String pwd = stuBean.getS_pwd();
  String tel = stuBean.getS_tel();
  String sql = "insert  t_student(s_name,s_pwd,s_tel) values(?,?,?)";
  try {
   PreparedStatement pre = con.prepareStatement(sql);
   pre.setString(1, name);
   pre.setString(2, pwd);
   pre.setString(3, tel);
   count= pre.executeUpdate();
   
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return count;
 }
}
 

 

posted on 2020-07-17 09:37  琉夏123  阅读(241)  评论(0)    收藏  举报