package edu.ctgu.exer.servlet;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import edu.ctgu.exer.dao.User;
import edu.ctgu.exer.dao.UserDaoInterfaceImplements;
public class LoginServlet extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 1L;
public void service(HttpServletRequest request,HttpServletResponse response)throws ServletException,java.io.IOException
{
String errMsg = "";
//Servlet本身并不输出响应到客户端,因此必须将请求转发
RequestDispatcher rd;
//获取请求参数
User user = new User();
String name = request.getParameter("name");
String password = request.getParameter("password");
user.setName(name);
user.setPassword(password);
try
{
UserDaoInterfaceImplements udii = new UserDaoInterfaceImplements();
int result = udii.select(user);
if (result == 1){
//获取session对象
HttpSession session = request.getSession(true);
//设置session属性,跟踪用户会话状态
session.setAttribute("username" ,name);
//获取转发对象
rd = request.getRequestDispatcher("/welcome.jsp");
//转发请求
rd.forward(request,response);
}else if(result == 0){
//用户名和密码不匹配时
errMsg += "您的用户名密码不符合,请重新输入";
}else{
//用户名不存在时
errMsg += "您的用户名不存在,请先注册";
}
}
catch (Exception e)
{
e.printStackTrace();
}
//如果出错,转发到重新登录
if (errMsg != null && !errMsg.equals(""))
{
rd = request.getRequestDispatcher("/login.jsp");
request.setAttribute("err" , errMsg);
rd.forward(request,response);
}
}
}
- 1
- 2
- 3
- 4
- 5
- 6
前往页