是否有任何代碼可以添加到我的web應用程序中以實現cookie?這正是我可以在web.xml和jsp中完成的方式嗎?我想實現cookies登錄,但我不知道我該如何做到這一點。任何人都可以給我如何實現它的確切指示?如何在我的web應用程序中添加cookie的代碼
非常感謝您的幫助和支持。
/*
*要更改此許可證標題,請在項目屬性中選擇許可證標題。 *要更改此模板文件,請選擇工具|模板 *並在編輯器中打開模板。 */
package my_servlets;
import java.io.IOException;
import java.io.PrintWriter;
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 connect_with_my_sql_database.LoginDao;
import javax.servlet.http.Cookie;
public class Login extends HttpServlet{
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
@Override protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String n=request.getParameter("j_Username");
String p=request.getParameter("j_Password");
HttpSession session = request.getSession(false);
if(session!=null) {
session.setAttribute("Username", n);
session.setAttribute("Password", p);
}
if(LoginDao.validate(n, p)){
Cookie c1=new Cookie("j_Username",encrypt(n));//the username and passwrd are //encrypted
Cookie c2=new Cookie("j_Password",encrypt(p));
c1.setMaxAge(20000);
c2.setMaxAge(20000);
response.addCookie(c1);
response.addCookie(c2);
RequestDispatcher rd=request.getRequestDispatcher("style/success.jsp");
rd.forward(request,response);
}
else{
//out.print("<p style=\"color:red\">Sorry "+n+" or "+p+" error</p>");
RequestDispatcher rd=request.getRequestDispatcher("style/loginError.jsp");
rd.forward(request,response);
}
out.close();
}
}
如果你想做一個登錄系統,你爲什麼用'javascript'標記這個?你在編寫Node.js應用程序嗎?如果是這樣,那麼你的HTTP API可能有處理cookie的方法。 – Quentin
是的,對不起,你是對的。最好用cookies或類似的東西標記這個。我不是在寫一個node.js應用程序 –