接javaweb02 使用severlet完成登录功能01
在建立好连接数据库以及对数据库进行查询的Dao类之后,开始写servlet文件
package controller;
import dao.UsersCrudDao;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.swing.*;
import java.io.IOException;
import java.sql.SQLException;
//处理登录
//首先通过注解的方式绑定页面,在这里 需要3.0以上的版本才支持注解的方式设置servlet
@WebServlet(urlPatterns = "/toLogin")
//继承HttpServlet 类 使得从普通类变为servlet类
public class LoginServlet extends HttpServlet {
//定义一个变量存储结果
Integer result;
//重写service方法,service方法的好处是既可以处理post请求也可以处理get请求
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//设置中文编码
req.setCharacterEncoding("UTF-8");
//接收数据
String name=req.getParameter("username");
String pwd=req.getParameter("password");
//建立一个usersCrudDao对象,查询出结果
UsersCrudDao usersCrudDao=new UsersCrudDao(name,pwd);
try {
//将查询结果返回给result
result=usersCrudDao.selectStudent();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
//根据查询结果值不同进入不同页面,在这里只是原理演示,如果result等于0或1或2则分别为超级用户、普通用户、管理员用户
if (result==0){
//使用重定向的方法 跳转到对应的页面
resp.sendRedirect("index.jsp");
}else if (result==1){
resp.sendRedirect("index.jsp");
}else if (result==2){
resp.sendRedirect("index.jsp");
}else {
//如果查询结果不为0、1、2,则表明在用户名错误或者密码错误,返回错误提示界面
resp.sendRedirect("error.jsp");
}
}
}