Java 当我登录并进入登录页面并刷新页面时,会话ID发生更改并创建新会话,这是否正常?

Java 当我登录并进入登录页面并刷新页面时,会话ID发生更改并创建新会话,这是否正常?,java,session,servlets,session-cookies,Java,Session,Servlets,Session Cookies,当我登录并进入登录页面并刷新页面时,会话ID发生更改并创建新会话,这是否正常? 我声明我使用TomCat。 从index.html页面通过我登录的表单重定向到这个java页面,一旦打开java html页面,它就会返回我所要求的内容,但是如果我在tomcat上重新刷新页面,我知道它会创建一个新会话,这正常吗?我的目标是为每个单独的用户建立一个会话,我该怎么做 "index.html" <html> <head> <title> Inserisci

当我登录并进入登录页面并刷新页面时,会话ID发生更改并创建新会话,这是否正常? 我声明我使用TomCat。 从index.html页面通过我登录的表单重定向到这个java页面,一旦打开java html页面,它就会返回我所要求的内容,但是如果我在tomcat上重新刷新页面,我知道它会创建一个新会话,这正常吗?我的目标是为每个单独的用户建立一个会话,我该怎么做

"index.html"
<html>
  <head>
    <title> Inserisci nome </title>
  </head>

  <body>
    <p> <h2>Inserisci il tuo nome </h2>
    <form action="/Esercizio8/SerSal" method="post">
      <input type="text" name="nome"> <strong>USERNAME</strong> <br>
      <input type="password" name="pwd"> <strong>PASSWORD</strong> <br>
      <br>
      <input type="submit" value="Invia">
    </form>
  </body>
</html>

"SerSal.java"
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class SerSal extends HttpServlet{
  int count;
  protected void doPost(HttpServletRequest request,HttpServletResponse response) throws IOException,ServletException{
    String name = request.getParameter("name");
    String pwd = request.getParameter("pwd");
    HttpSession session = request.getSession();
    session.setAttribute("Name",name);
    session.setAttribute("Password",pwd);
    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    out.println("<html>");
    out.println("<head><title>HELLO!</title></head>");
    out.println("<body>");
    out.println("Hello " + name);
    out.println("This " + (session.isNew()? "is" : "is not") + " a new session! <br>");
    out.println("</body>");
    out.println("</html>");
    out.close();
  }
  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException,ServletException{
    HttpSession session = request.getSession(false);
  }
}

“index.html”
内隐命名
托诺姆酒店
用户名
密码

“SerSal.java” 导入java.io.*; 导入javax.servlet.*; 导入javax.servlet.http.*; 公共类SerSal扩展了HttpServlet{ 整数计数; 受保护的void doPost(HttpServletRequest请求、HttpServletResponse响应)引发IOException、ServletException{ 字符串名称=request.getParameter(“名称”); 字符串pwd=request.getParameter(“pwd”); HttpSession session=request.getSession(); session.setAttribute(“Name”,Name); session.setAttribute(“密码”,pwd); response.setContentType(“text/html”); PrintWriter out=response.getWriter(); out.println(“”); out.println(“你好!”); out.println(“”); out.println(“你好”+姓名); out.println(“此“+(session.isNew()?”是“:”不是“+”一个新会话!
”; out.println(“”); out.println(“”); out.close(); } 受保护的void doGet(HttpServletRequest请求、HttpServletResponse响应)引发IOException、ServletException{ HttpSession session=request.getSession(false); } }
您使用的是Spring Security吗?如果刷新页面,您将点击登录servlet的GET方法。请在doGet://中发布doGet://如果不存在会话,请不要创建会话(false)。HttpSession session=request.getSession(false)@JonathanLaliberte@AndreaGhezzi我将需要看到更多的代码,编辑您的答案,包括it@JonathanLaliberte完成!我通过插入.html文件和doGet方法修改了代码。您使用的是Spring安全性吗?如果刷新页面,您将点击登录servlet的GET方法。请在doGet://中发布doGet://如果不存在会话,请不要创建会话(false)。HttpSession session=request.getSession(false)@JonathanLaliberte@AndreaGhezzi我将需要看到更多的代码,编辑您的答案,包括it@JonathanLaliberte完成!我通过插入.html文件和doGet方法修改了代码。