ホームページ  >  記事  >  Java  >  セッションのライフサイクルは何ですか?

セッションのライフサイクルは何ですか?

(*-*)浩
(*-*)浩オリジナル
2019-05-06 13:59:5724576ブラウズ

セッションは中国語に直接翻訳するのが難しく、通常は時間領域に翻訳されます。コンピュータ用語では、セッションとはエンド ユーザーが対話型システムと通信する間の時間間隔を指します。

は通常、システムへの登録を行ってからシステムからログアウトするまでの経過時間を指します。そして、必要に応じて、ある程度の操作の余地があるかもしれません。

推奨コース: Java チュートリアル

セッションのライフサイクルは何ですか?

セッションのライフサイクル

セッションはサーバーのメモリに保存されます (高速アクセスのため)。

セッションはいつ有効になりますか?

セッションは、ユーザーが初めてサーバーにアクセスしたときに作成されます。セッションは、アクセスしたときにのみ作成されることに注意してください。 JSP、サーブレットなどのプログラム、HTML、IMAGEなどにアクセス 状態リソースはセッションを作成しません。request.getSession(true) を呼び出してセッションを強制的に作成できます。

セッションの期限切れはいつですか?

1. サーバーは、長期間非アクティブだったセッションをサーバーのメモリから消去し、セッションは期限切れになります。現時点では。 Tomcat のセッションのデフォルトの有効期限は 20 分です。

2. Session の validate メソッドを呼び出します。

HttpSession session = request.getSession();
session.invalidate();//注销该request的所有session

3. セッションの有効期限はいつ計算され始めますか?ログインするとすぐにカウントが開始されますか、それともアクティブでなくなったときにカウントが開始されますか?

回答: セッションが非アクティブな時間から計算されます。セッションが常にアクティブであれば、セッションは期限切れになりません。

タイマーはセッションにアクセスされないときに開始され、セッションにアクセスされるとタイマーは 0 にクリアされます;

4. セッションの有効期限を設定します

a) web.xml の

<session-config>
    <session-timeout>30</session-timeout>
</session-config>

b) プログラムで

session.setMaxInactiveInterval(30 * 60);//设置单位为秒,设置为-1永不过期

を手動で設定 c) Tomcat はセッションの有効期限を変更することもできます。サーバーでコンテキストを定義する場合.xml では、次の定義を使用します:

<Context path="/livsorder" 
docBase="/home/httpd/html/livsorder"   defaultSessionTimeOut="3600" 
isWARExpanded="true"   
isWARValidated="false" isInvokerEnabled="true"   isWorkDirPersistent="false"/>

[注]: セッション内の特定の値を削除する場合は、removeAttribute メソッドを呼び出すことができます。ただし、リクエスト内の SessionID は変更されませんが、値は変更されました。 セッションは元のセッションのままです。 ↓↓↓↓↓↓↓↓

request.getSession().removeAttribute("xxx");

以上がセッションのライフサイクルは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。