package com.sd.web.servlet;
import java.io.IOException;
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 com.sd.domain.User;
import com.sd.service.UserService;
import com.sd.service.impl.UserServiceimpl;
import cn.dsna.util.images.ValidateCode;
@WebServlet("/loginservlet")
public class loginServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//1解决乱码问题
//请求的乱码问题
request.setCharacterEncoding("utf-8");
//相应的乱码问题
response.setContentType("text/html;charset=utf-8");
//2接收数据,参数名是表单的输入的元素的名字
String username = request.getParameter("username");
String password = request.getParameter("password");
String vcode = request.getParameter("validateCode");
//3校验数据
//分别校验用户名,密码,验证码是否为空
//username == null校验是否为空,username.trim().equals("")校验是否为空字符串
if(username == null||username.trim().equals("")) {
response.getWriter().write("<script>alert('用户名不能为空');window.location = 'login.jsp'</script>");
return;
}
if(password == null||password.trim().equals("")) {
response.getWriter().write("<script>alert('密码不能为空');window.location = 'login.jsp'</script>");
return;
}
if(vcode == null||vcode.trim().equals("")) {
response.getWriter().write("<script>alert('验证码不能为空');window.location = 'login.jsp'</script>");
return;
}
//验证码是否正确
String code = (String)request.getSession().getAttribute("code");
if(!vcode.equalsIgnoreCase(code)) {
response.getWriter().write("<script>alert('验证码有误');window.location = 'login.jsp'</script>");
return;
}
//4判断用户名密码是否正确
UserService userService = new UserServiceimpl() ;
try {
User user = userService.login(username, password);
//登陆成功
request.getSession().setAttribute("user", user);
//重定向
response.sendRedirect(request.getContextPath()+"/main.jsp");
}catch(Exception e){
response.getWriter().write("登陆失败"+e.getMessage()+";3秒后跳转到登录页面");
response.setHeader("refresh", "3;url = login.jsp");
}
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
}
登录校验
本博客所有内容均为学习日记,如有错误,烦请指正;如有侵权,请联系作者删除。
有关文章内容方面,请尽情留言,大家相互探讨