開発者ドキュメント

セッションが存在するかどうかをチェックする方法?

セッションが存在するかどうかを検出する方法は2つあります。

1)request.getSession(); + session.isNew()

public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws IOException{

        response.setContentType("text/html");
        PrintWriter pw = response.getWriter();

        HttpSession session = request.getSession();
        if(session.isNew()){
            pw.println("New session is jutst created");
        }else{
            pw.println("This is old session");
        }
    }

2)request.getSession(false); + if(session == null)

  • “request.getSession(false);”からセッションを取得すると、この関数は存在していればセッションを返し、そうでない場合はnull値が返されます。 + – 後でセッションオブジェクトで “ヌル”チェックを行うことができます。ヌルは存在するセッションが存在しないことを意味します。

public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws IOException{

        response.setContentType("text/html");
        PrintWriter pw = response.getWriter();

        HttpSession session = request.getSession(false);
        if(session ==null){
            pw.println("No session available");
        }else{
            pw.println("This is old session");
        }
    }

リンク://タグ/サーブレット/[サーブレット]リンク://タグ/セッション/[セッション]

モバイルバージョンを終了