ログイン後にセッションに入れた情報はどのタイミングで参照するべき??

JavaでのWebアプリ作成時のユーザ認証について質問させて下さい。
現在、勉強のために個人的にSpring MVCでWebアプリケーションを作成しています。
その際気になった点として、ログイン処理を行った際、ログイン成功時にはユーザ情報をセッションに格納し、それをほかの処理で参照する、というのが古典的なアプリで自作するユーザ認証の方法としてあるということがわかりましたが、そのセッション情報を使用してユーザ認証は、各業務トランザクションの頭で必ず行う必要があるのでしょうか。(もしくは、共通クラスを作成してそこを必ず経由するようにするとか…?)
もしくは、いちいちセッション情報を参照しなくてもいいログイン状態判定の方法がほかにありますでしょうか。
アドバイス頂けますよう、よろしくお願いいたします。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2013/12/19 16:39:27

ベストアンサー

id:a-kuma3 No.1

回答回数4973ベストアンサー獲得回数2154

ログインされているかどうかの判定をどうやって書いたらええねん?
ぎょうさんある servlet や jsp に、いちいち書いていくんかいな...

ってことですよね。


サーブレット・フィルタという仕組みがあります。

フィルタで、本来の処理を呼び出す前にログイン状態の確認をするような感じになると思います。


もし、なにがしかのフレームワークを使っているのであれば、フィルタに相当するような仕組みが用意されているはずです。
例えば、Struts だったらインターセプター。

ああ、Spring を使ってるって書いてありましたね。
Spring だと Around Advice とか Before Advice を使うことになるんでしょか。

他4件のコメントを見る
id:little_hands

行き違いになってしまい、すみません。
上述の方法で実装してみようと思います。

こういうのが一つ一つできるようになっていくと楽しいですね。
丁寧なアドバイス、どうもありがとうございました!!

2013/12/19 15:33:28
id:little_hands

この後は専用Exceptionを作成し、HandlerExceptionResolverで拾う方法を試してみようと思います。
・・・と考えましたが、Around Adviceでセッションデータ有無で分岐し、エラー画面に飛ばすかコントローラーを呼び出すか出し分けることにしました。
最初のコメントのアドバイスのおかげです。どうもありがとうございました!!

2013/12/19 16:29:57

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません