03.登录注册注销案例-自定义登录异常

UserException.java
package com.gyf.exception; public class UserException extends Exception{ public UserException(String message) { super(message); // TODO Auto-generated constructor stub } }
LoginServlet.java
package com.exp.web.servlet; import java.io.IOException; import java.lang.reflect.InvocationTargetException; 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 org.apache.commons.beanutils.BeanUtils; import com.exp.domain.User; import com.exp.exception.UserException; import com.exp.service.IUserService; import com.exp.service.impl.UserServiceImpl; @WebServlet("/LoginServlet") public class LoginServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub response.setHeader("content-type", "text/html;charset=utf-8"); //1、获取请求参数 User formUser = new User(); try { BeanUtils.populate(formUser,request.getParameterMap()); //调用业务方法 login IUserService userService = new UserServiceImpl(); try { User dbUser = userService.login(formUser); //登录用户存储到session request.getSession().setAttribute("user", dbUser); //进入后台页面 response.sendRedirect(request.getContextPath() + "/main.jsp"); } catch (UserException e) { e.printStackTrace(); //往request里存数据 request.setAttribute("message", e.getMessage()); //登录失败,回到登录页面【转发】 request.getRequestDispatcher("/login.jsp").forward(request, response); } } catch (IllegalAccessException e1) { e1.printStackTrace(); } catch (InvocationTargetException e1) { e1.printStackTrace(); } } }


浙公网安备 33010602011771号