「Java8」getAttributeNamesで全てのセッションキーを取得するサンプル

環境
Spring 5.3.8
Java SE 1.8

構文
1.public javax.servlet.http.HttpSession getSession( [ boolean セッション生成フラグ ] )
getSessionメソッドは、HttpSessionオブジェクトを取得します。
引数のセッション生成フラグにtrueを指定すると、現在セッションが存在しない場合は、生成して返します。

2.public java.util.Enumeration getAttributeNames( )
リクエストスコープの情報の属性名を全て取得するには、HttpServletRequest#getAttributeNames()を使用します。

使用例

// セッションを取得
HttpSession session = request.getSession();
// セッションスコープの情報の属性名を取得
Enumeration<?>attLst= session.getAttributeNames();
// セッションキーリスト変数の宣言
ArrayList<String>ssKeyLst = new ArrayList<String>();

//セッションキーを取得します
while(attLst.hasMoreElements()) {
   // セッションのキー取得
   String key = attLst.nextElement().toString();
   // キーをリストに追加
   ssKeyLst.add(key);
}

 

Java

Posted by arkgame