
こんばんは。
『sessionスコープはPCごと』に関しての質問なのですが、
(http://www.atmarkit.co.jp/fjava/rensai3/tomcat09 …から抜粋)
ログイン後、ユーザ名をsessionに保持し、どの画面に遷移してもユーザ名が表示されるシステムで、
同一PCの2つのブラウザから別ユーザでログインしても、きちんとユーザ名が識別できその後も識別したまま操作できます。
なぜ、このような現象が起こるのでしょうか?
私は、『1PC = 1Session』なら後からログインしたユーザ名でsessionデータが上書きされると思っていました。
req.getSession().setAttribute("userName", form.getUser());
このソースは、sessionIDで識別し取得したsessionスコープにform.getUser()をuserNameという名前でバインドする。という感じですよね?
『1ブラウザ = 1session』なのでしょうか?
※1ブラウザとは子画面も含みます。以下↓
yahooなどでリンクを押して別画面に派生する場合は、別ブラウザが立ち上がってもログイン名が出るので、同一sessionだなと思います。
間違っていますか?
No.1ベストアンサー
- 回答日時:
厳密にはセッション管理の実装方法によります。
おそらくご質問者様はセッションCookieの仕組みを使っていると推測します。
※CookieにセッションIDを持つ方法です
この場合、1プロセス単位に決まります。
プロセスが何かといいますと、タスクマネージャのプロセスタブに表示されているexeと思っていただいて構いません。
で、例えばIEですと、IEのアイコンをダブルクリックして2個ブラウザを起動したとすると、これは別のプロセスになります。
しかし、リンク等で別画面を開いた場合は同一プロセスになります。
したがって、同じプロセスであるから同じセッションであるということです。
この回答への補足
こんばんは。ご回答ありがとうございます☆
とても分かりやすくて理解できましたm(_ _)m
スッキリしました☆
そこで、また質問なのですが、
>>厳密にはセッション管理の実装方法によります。
Cookie保持とURL埋め込みで違うと言うことですか?
キーワードでいいので、他の実装方法を教えてください。
他の実装方法ならば、『1PC = 1Session』と考えていいのですか?
ご回答よろしくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
javascriptでセッションの削除...
-
JSPでsession変数が勝手に書き...
-
javascriptでセッションを取得
-
DDEの制限について
-
JSPで、sessionのタイムアウト...
-
セッションIDの桁数
-
ボタンが活性化の場合とは、ボ...
-
webアプリを作ってます。エラー...
-
ページ遷移せずにjava部品を実...
-
サーブレットからJSPへの変数受...
-
三菱GOTの画面切り替えについて
-
フォーム上で押されたボタンに...
-
ラジオボタンの選択肢をサーブ...
-
親子画面での値の受け渡し方法
-
すき家のハンディ操作
-
Formのデータが欠落することがある
-
log4jでログレベルが取得できな...
-
C# ログイン画面からメイン画面...
-
strutsで、任意の画面からの任...
-
フォルダ改行
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
グローバルIPアドレスの変更タ...
-
sessionスコープとapplication...
-
JSPでsession変数が勝手に書き...
-
javascriptでセッションを取得
-
ASP.NETのGlobal.asaxについて
-
エラーページ遷移後に入力値を残す
-
HTMLのSELECTタグの使い方、JSP...
-
setAttribute getAttribute 配...
-
画面遷移でセッション切れにな...
-
セッションタイムアウトの設定...
-
aタグによる複数リンクを別セッ...
-
ASP Session変数名の取得
-
JSP + ラジオボタン
-
WEBアプリで管理者ログイン機能...
-
フレームを使用した際のセッシ...
-
Tomcatでの同一セッション同時...
-
Weblogicのロードバランシング...
-
セッション情報の保持について
-
ブラウザバック禁止
-
struts2でのフィルターを使った...
おすすめ情報