springmvcにおいて、コントローラは、任意のサーブレットAPIオブジェクトに依存しない、サーブレットAPIオブジェクトが使用される参照方法として扱うことができる基準のHttpSessionは、以下のようにそれを直接使用することができ、そのようなHttpSessionオブジェクトを使用する必要があるように、非常に簡単であり、
@RequestMapping(値= "/dologin.html"、メソッド= RequestMethod.POST) パブリック文字列doLogin(@RequestParam文字列ユーザーコード、@RequestParamストリングのuserPassword、 HttpSessionのセッション、HttpServletRequestのリクエスト){ ユーザーユーザー = userService.selectUserByUserCodeAndUserPassword(ユーザーコード、のuserPassword) ; もし(NULL!= ユーザ){ にsession.setAttribute( "userSession"ユーザ)。 戻る:「/user/main.htmlをリダイレクトします」。 } 他{ request.setAttribute( "エラー"、 "用户名或密码不正确")。 ; } } @RequestMapping( "/main.html" ) パブリック文字列メイン(HttpSessionのセッション){ 場合(session.getAttribute( "userSession")== NULL ){ リターンが "リダイレクト:/user/login.htmlを" 。 } 戻り「フレーム」。 }
HttpSessionの中に、現在のユーザーのログイン情報の成功の後、同じHttpServletRequestのために、主なユーザーはエラーメッセージをログに記録することができませんでした。
またていない場合に現在ログインしているユーザーがセッションは、システムがログインしていない証明したかどうかを決定するためのロジックによってインビボで増加のHttpSessionにメインメソッドパラメータまたはセッションの有効期限が切れています