Scope(スコープ)
インスタンスを保存できる領域。
スコープを経由させることにより、サーブレットクラスとJSPファイルの間でインスタンスを共有させることが可能になる。
JavaBeans
スコープに保存する再利用しやすくするルールに基づいたクラス(インスタンス)
直列化
プロパティ
getter/setter
リクエストスコープ
レスポンスが返されるまで利用可能
HttpServletRequest
リクエストスコープにインスタンス生成
記述
request.setAttribute("属性名", インスタンス);
リクエストスコープからインスタンスを取得
記述
取得するインスタンスの型 変数名 = (取得するインスタンスの型) request.getAttribute("属性名");
セッションスコープ
保存インスタンスの有効期限は開発者が設定
リクエストをまたいでの使用可能
セッションスコープの取得
記述
HttpSession session = request.getSession();
セッションスコープに保存
記述
session.setAttribute("属性名", インスタンス);
セッションスコープからインスタンスを取得
記述
取得するインスタンスの型 変数名 = (取得するインスタンスの型) session.getAttribute("属性名");
セッションスコープからインスタンスを削除
記述
session.removeAttribute("属性名");
セッションスコープを破棄
記述
session.invalidate();
アプリケーションスコープ
アプリケーション終了まで利用可能
高速アクセス
アプリケーションスコープの取得
記述
ServletContext application = this.getServletContext();
アプリケーションスコープに保存
記述
appliction.setAttribute("属性名", インスタンス);
アプリケーションスコープからインスタンスを取得
記述
取得するインスタンスの型 変数名 = (取得するインスタンスの型) application.getAttribute("属性名");
アプリケーションスコープからインスタンスを削除
記述
application.removeAttribute("属性名");