同学们再做计算机毕业设计的时候,JSP会是很多软件工程专业的首选,JAVA作为一个面向对象高级语言,拥有强大的功能, 但是在学习难度上也是客观存在的,有很多同学到了大四还是无法完整的写一份代码,今天给同学们分享一下如何使用SERVLET实现登录验证,麻雀虽小五脏俱全,希望同学们能从小的知识点去理解JAVA,理解SEVLET,做好自己的毕业设计
1. 新建一个Dynamic Web Project项目,里面新建1个filter文件、1个servlet文件和2个jsp文件,整体的框架如图所示:

 2.LoginFilter.java里面的代码如下所示:   1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 package filter;    import java.io.IOException; import java.io.PrintWriter;    import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.annotation.WebFilter; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession;    @WebFilter(filterName = "loginFilter", urlPatterns = { "/*" }) public class LoginFilter implements Filter {     public void destroy() {  }     public void doFilter(ServletRequest request, ServletResponse response,  FilterChain chain) throws IOException, ServletException {  HttpServletRequest req = (HttpServletRequest) request;  HttpServletResponse resp = (HttpServletResponse) response;  HttpSession session = req.getSession(true);  resp.setContentType("text/html;");  resp.setCharacterEncoding("utf-8");  PrintWriter out = resp.getWriter();  String request_uri = req.getRequestURI();  String ctxPath = req.getContextPath();  String uri = request_uri.substring(ctxPath.length());  if (uri.contains("login.jsp") || uri.contains("loginServlet")) {  chain.doFilter(request, response);  } else {  if (session.getAttribute("user") != null) {  chain.doFilter(request, response);  } else {  out.println("您没有登录,请先登录!3秒后回到登录页面。");  resp.setHeader("refresh", "3;url=" + ctxPath + "/login.jsp");  return;  }  }  }     public void init(FilterConfig fConfig) throws ServletException {  }    } package 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 javax.servlet.http.HttpSession;    @WebServlet(name = "loginServlet", urlPatterns = { "/loginServlet" }) public class LoginServlet extends HttpServlet {  private static final long serialVersionUID = 1L;     protected void doGet(HttpServletRequest request,  HttpServletResponse response) throws ServletException, IOException {  doPost(request, response);  }     protected void doPost(HttpServletRequest request,  HttpServletResponse response) throws ServletException, IOException {  String username = request.getParameter("name");  String password = request.getParameter("pwd");  if ("filter".equals(username) && "filter".equals(password)) {  HttpSession session = request.getSession(true);  session.setAttribute("user", username);  response.sendRedirect("loginSuccess.jsp");  } else {  response.sendRedirect("login.jsp");  }  }    }  
    
        
             
    
             
            
             
        
版权所有© 帮我毕业网 并保留所有权利