2013-03-04 55 views
2

我對編程相當陌生,需要一些關於註銷的指導。 我正在製作一個基於Web的應用程序,可以在後臺服務器上運行。我的登錄是 工作正常,但我不確定如何實施註銷。任何幫助極大地 讚賞。下面是登錄servlet代碼:需要註銷代碼

protected void processRequest(HttpServletRequest request 
        , HttpServletResponse response) 
     throws ServletException, IOException { 

    String address = ""; 
    String operation = request.getParameter("operation"); 
    // System.out.println(operation); 
    HttpSession session = request.getSession(true); 

    UserModel u = null; 
    if (operation != null) { 

     if (operation.equalsIgnoreCase("login")) { 

      u = new UserModel(); 

      String Username = request.getParameter("username"); 
      String Password = request.getParameter("password"); 
      System.out.println("userModel" + u); 
      u = u.find(Username, Password); 
      System.out.println("i" + u.getUsername()); 

      if (u.getUsername() != null) { 

       session.setAttribute("user", u); 
       address = "Homepage.jsp"; 
      } else { 
       address = "InvalidLogin.jsp"; 
      } 

,這裏是我的JSP頁面代碼:

<form id="login1" action="Servlet"> 
    <input type="hidden" name="operation" value="login" /> 
    <h1>Log In</h1> 
    <fieldset id="inputs"> 
     <input id="username" type="text" placeholder="Username" 
       name="username"autofocus required> 
     <input id="password" type="password" placeholder="Password" 
       name="password" required> 
    </fieldset> 
    <fieldset id="actions"> 
     <button type="submitm" value="Login" 
       class="IR" id="IRButton"><em></em></button> 
    </fieldset> 
</form> 
<form action="Register1.jsp"> 
    <button type ="submitn" value="Register" class="IR2" 
       id="IRButton2"><em></em></button> 
</form> 

....如果有人能告訴我,我需要在這兩個頁面什麼代碼,這將太好了!謝謝你

回答

1

嘗試......請考慮Session Management也可用於登錄和註銷行爲

的web.xml

<?xml version="1.0" encoding="UTF-8"?> 
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> 
    <servlet> 
     <servlet-name>ServletLogic</servlet-name> 
     <servlet-class>model.ServletLogic</servlet-class> 
    </servlet> 
    <servlet> 
     <servlet-name>ServletLogout</servlet-name> 
     <servlet-class>model.ServletLogout</servlet-class> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>ServletLogic</servlet-name> 
     <url-pattern>/ServletLogic</url-pattern> 
    </servlet-mapping> 
    <servlet-mapping> 
     <servlet-name>ServletLogout</servlet-name> 
     <url-pattern>/ServletLogout</url-pattern> 
    </servlet-mapping> 
    <session-config> 
     <session-timeout> 
      30 
     </session-timeout> 
    </session-config> 
</web-app> 

的index.jsp

<%@page import="java.util.Map"%> 
<%@page import="java.util.HashMap"%> 
<%@page contentType="text/html" pageEncoding="UTF-8"%> 
<!DOCTYPE html> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
     <title>JSP Page</title> 
    </head> 
    <body> 
     <form action="ServletLogic" method="post"> 
      USER:<input type="text" name="user" id="user"/><br> 
      PASS:<input type="password" name="pass" id="pass"/><br> 
      <input type="submit" value="Login"/> 
     </form> 
    </body> 
</html> 

的login.jsp

<%@page contentType="text/html" pageEncoding="UTF-8"%> 
<!DOCTYPE html> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
     <title>JSP Page</title> 
    </head> 
    <body> 
     <h1>My Page</h1> 
     <form action="ServletLogout" method="post"> 
       <input type="submit" value="Logout"/> 
     </form> 
    </body> 
</html> 

ServletLogic.java //的servlet

package model; 

import java.io.IOException; 
import java.io.PrintWriter; 
import javax.servlet.ServletException; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 

public class ServletLogic extends HttpServlet { 

    protected void processRequest(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 
     response.setContentType("text/html;charset=UTF-8"); 
     PrintWriter out = response.getWriter(); 

     String user=request.getParameter("user"); 
     String pass=request.getParameter("pass"); 
     String res; 
     if(user.equals("admin")&&pass.equals("admin")) 
     res="Success!!!"; 
     else 
      res="Failure!!!"; 
     request.getRequestDispatcher("login.jsp").forward(request, response); 

     try { 

     } finally {    
      out.close(); 
     } 
    } 

    @Override 
    protected void doGet(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 
     processRequest(request, response); 
    } 

    @Override 
    protected void doPost(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 
     processRequest(request, response); 
    } 


    @Override 
    public String getServletInfo() { 
     return "Short description"; 
    } 
} 

ServletLogout.java // servlet的

package model; 

import java.io.IOException; 
import java.io.PrintWriter; 
import javax.servlet.ServletException; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 

public class ServletLogout extends HttpServlet { 

    protected void processRequest(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 
     response.setContentType("text/html;charset=UTF-8"); 
     PrintWriter out = response.getWriter(); 
     try { 

     request.getRequestDispatcher("index.jsp").forward(request, response); 
     } finally {    
      out.close(); 
     } 
    } 

    @Override 
    protected void doGet(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 
     processRequest(request, response); 
    } 

    @Override 
    protected void doPost(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 
     processRequest(request, response); 
    } 

    @Override 
    public String getServletInfo() { 
     return "Short description"; 
    } 
}