
A 回答 (5件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
> session変数というのは同一ユーザーのページ(画面間)でやりとりする変数だと思っていたのですが、他のユーザーも参照することは可能なのですか?
これは認識されている通りです。
他のユーザからは見れません。
どうも、私が2重ログインというの勘違いしていたようです。。。
ここで言われているのは、別ブラウザや別端末で同一ユーザがログインするのを
止めさせたいということですね?
私が考えていたのは、一度ログインしたユーザがページを移動してログインなどの
画面にやってきたときに、再びログイン画面が出て2重ログインになってしまう
というのを避けたいのだと思っていました。。。
>> ログインしているユーザを他のユーザが確認したいような場合には、
>> HttpSessionにログイン済みであることを書き込んで、ServletContext
>> にログインしているユーザのリストを書き込むような方法
>
> また↑はsession.setAttribute("セッション変数名",ユーザー名などの値)
> で行えばよいのでしょうか?
これは、
あるユーザがログインしたときに、
session.setAttribute("セッション変数",ログイン済みを表すObject);
List userList = (List)application.getAttribute("ログインリスト");
userList.add( "ユーザ名とか" );
application.setAttribute( userList );
としてやることを意味します。
ただし、この場合ユーザがログアウトした場合に、正しくapplicationの
ユーザリストから削除してやらないと、サーバが終了されるまで、その
ユーザはログインできなくなります。
また、ブラウザなどの場合、「×ボタン」が押されたことも想定しておく
必要があります。
No.3
- 回答日時:
> application変数はVectorクラスのように動的に増やすことは可能なのでしょうか?
できません。
application というのはJSPで規定されているServletコンテナ(Tomcatとか)が
暗黙的に定義する変数で、ServletContextクラスのオブジェクトです。
これはNo.2でwatapenさんが言われているように、WEBアプリケーションで
1つしか存在しません。
また、application に追加するだけでは、例えば「A」という人が
ログインしたときに、WEBアプリケーションに「A」という人がログイン済みで
あることは知らせることができても、どのユーザが「A」という人なのかは分かりません。
ログインの情報を持たせるのはHttpSession(session変数)が多いです。
あるいは、クッキーに書き込んでも良いでしょう。
例えば、チャットのようなシステムのように、ログインしているユーザを
他のユーザが確認したいような場合には、HttpSessionにログイン済みで
あることを書き込んで、ServletContextにログインしているユーザのリストを
書き込むような方法が考えられますね。
この回答への補足
session変数というのは同一ユーザーのページ(画面間)でやりとりする変数だと思っていたのですが、他のユーザーも参照することは可能なのですか?
つまり、JSPではsession.getAttribute("セッション変数名");
で取得するのでしょうか?
>ログインしているユーザを他のユーザが確認したいような場合には、HttpSessionにログイン済みであることを書き込んで、ServletContextにログインしているユーザのリストを書き込むような方法
また↑はsession.setAttribute("セッション変数名",ユーザー名などの値)
で行えばよいのでしょうか?
No.2
- 回答日時:
applicationはコンテキストに対してひとつしかないんじゃなかったかなぁ
application にPropertiesでもつっこんでやるほうがいいのかも
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java 問題作成のWebアプリの作り方を教えてください 1 2022/11/26 22:01
- JavaScript [Java] Edgeでのアドレスバー非表示について 3 2022/04/20 17:51
- その他(プログラミング・Web制作) Windowsのマクロプログラムで、こんなことできますか? 3 2022/06/28 14:30
- Java JavaでWebページ作成 7 2023/07/21 21:09
- マウス・キーボード キーボード設定で困っています。長文です。 2 2022/12/10 12:44
- Visual Basic(VBA) VBA アドインについて お詳しい方 ご教授をお願いします。 相談事項 現在以下の対応を実施した所、 1 2022/11/02 16:53
- マウス・キーボード Logicool optionsについての質問です。 私が使っているレシーバーはUnifyingです 1 2022/09/22 23:39
- Windows 10 ビデオカードが変更されたPCの復元 1 2022/11/29 02:01
- ポケモンGO ポケモンgoのログイン画面からGoogleアカウントを消す方法を教えてください。 iPhoneです 1 2022/09/17 06:54
- HTML・CSS WEBサイトの構築。表示データとWEBデザインを分離する考え方を専門用語・業界用語では何と言うか? 8 2022/09/27 09:16
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PHPからWindowsログインユーザ...
-
えきねっとのログイン画面はどこ?
-
特定の端末からのみWebシステム...
-
勝手にログアウトされてしまい...
-
複数選択のListBoxでClickイベ...
-
DVD-Rの「セッションを閉じる」...
-
getParameterで値が取得できず...
-
submitボタンにvalue属性の値で...
-
ページングが大量発生する原因...
-
VBAで一時中断したプログラムの...
-
FORMタグ内に複数submitボタン...
-
同じソリューション内の別のプ...
-
DataGridViewのチェックボック...
-
PageLoadの後にJavascript実行...
-
Accessの画面更新を一時的に停...
-
コネクション・セッション・ト...
-
コンピュータへの接続数が最大...
-
ボタンのなかに表示する文字を...
-
ASPで画面間のパラメタ受け渡し
-
aspxをhtmlに変換する方法について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PHPからWindowsログインユーザ...
-
えきねっとのログイン画面はどこ?
-
VBAでHTTPログイン
-
Global.asaについて
-
PWを入れると別のページに飛ん...
-
セッション管理について(同時...
-
エディットボックスの非表示方法
-
phpmyadminでDBが作成できない。
-
XMLHTTPを用いて認証が必要なUR...
-
Enterキーでログイン
-
特定の端末からのみWebシステム...
-
ログインフラグがわかりません。
-
INPUTにnameがない場合のsubmit
-
セキュリティに関して
-
ASP.NET MVC 最初からあるログ...
-
windows統合認証とform認証の併用
-
勝手にログアウトされてしまい...
-
PHPで作成するログイン画面の作...
-
Windows認証でDBにアクセスでき...
-
戻るボタンで、ログイン中を維...
おすすめ情報