##テクニカルセッション
1、セッション:セッションが複数の要求と応答を含みます。
*最初のセッション:最初のブラウザはこれまでオフ1つの党になるまで、サーバリソース、セッション確立に要求を送信します。
2、関数:再度セッションの複数の要求の間の範囲、共有データ
3つの方法:
1、クライアントセッションの技術:クッキー
2、サーバー側のセッションテクニック:セッション
## クッキー
1、概念:クライアントに格納されたデータは、クライアントのセッション・テクノロジー
2は、はじめに:
*これらの手順を実行します。
1、結合クッキーオブジェクトデータを作成します
*新しいクッキー(文字列名、文字列値)
2、送信クッキーオブジェクト
* response.addCookie(クッキークッキー)
図3は、データを取得し、クッキーを取得します
*クッキー[] request.getCookies()
パッケージcom.Cookie.demo01を。 輸入javax.servlet.ServletException; 輸入javax.servlet.annotation.WebServlet; インポートのjavax.servlet.http.Cookie。 輸入javax.servlet.http.HttpServlet。 インポートのjavax.servlet.http.HttpServletRequest; インポートのjavax.servlet.http.HttpServletResponse; インポートにjava.io.IOException; / ** *クッキー快速入门 * / @WebServlet( "/ CookieDemo01" ) のパブリック クラス CookieDemo01が拡張HttpServletを{ @Overrideは 保護され 、ボイドdoPostメソッド(HttpServletRequestのリクエスト、HttpServletResponseの応答)スローServletExceptionがは、IOException { // 1、创建クッキー对象 クッキークッキー= 新しいクッキー( "MSG"、 "こんにちは" )。 // 2、发送クッキー response.addCookie(クッキー); } @Overrideは、 保護された ボイドのdoGet(HttpServletRequestのリクエスト、HttpServletResponseの応答)がスローServletExceptionがは、IOException { この.doPost(要求、応答)。 } }
パッケージcom.Cookie.demo01を。 輸入javax.servlet.ServletException; 輸入javax.servlet.annotation.WebServlet; インポートのjavax.servlet.http.Cookie。 輸入javax.servlet.http.HttpServlet。 インポートのjavax.servlet.http.HttpServletRequest; インポートのjavax.servlet.http.HttpServletResponse; インポートにjava.io.IOException; / ** *获取クッキー * / @WebServlet( "/ CookieDemo02" ) のパブリック クラス CookieDemo02は拡張のHttpServletを{ @Overrideが 保護された 無効doPostメソッド(HttpServletRequestのリクエスト、HttpServletResponseの応答)がスローServletExceptionがは、IOException { // 3、获取クッキー クッキー[] CS = request.getCookies()。 // 获取数据、遍历クッキー の場合(CS =!ヌル){ のために(クッキーC:CS){ 文字列名 = c.getName(); 文字列値 = c.getValue()。 System.out.println(名前 + ":" + 値)。 } } } @Overrideは 保護され 、ボイドdoGet(HttpServletRequestのリクエスト、HttpServletResponseの応答)スローServletExceptionがは、IOException { この.doPost(要求、応答)。 } }
3.原則
*応答に基づいて、およびSet-Cookieヘッダークッキー要求ヘッダー達成します
4、クッキーの詳細
1、一度複数のクッキーを送ることができますか?
*缶
*クッキーは何回addCookie方法は、クッキー応答コールを送信するために使用することができ、複数のオブジェクトを作成することができます。
どのくらいのために、ブラウザに保存されている2、クッキー?
ブラウザを閉じたときに1、デフォルトで、クッキーのデータが破壊されます
2、永続ストレージ:
* setMaxAge(int型秒)
1、正の数:クッキーデータはハードディスクファイルに書き込まれます。永続ストレージ。クッキーの生存期間。
2、負:デフォルト
3.ゼロ:削除クッキー情報
パッケージcom.Cookie.demo01を。 輸入javax.servlet.ServletException; 輸入javax.servlet.annotation.WebServlet; インポートのjavax.servlet.http.Cookie。 輸入javax.servlet.http.HttpServlet。 インポートのjavax.servlet.http.HttpServletRequest; インポートのjavax.servlet.http.HttpServletResponse; インポートにjava.io.IOException; / ** *クッキー快速入门 * / @WebServlet( "/ CookieDemo01" ) のパブリック クラス CookieDemo01が拡張HttpServletを{ @Overrideは 保護され 、ボイドdoPost(HttpServletRequestのリクエスト、HttpServletResponseの応答)スローServletExceptionが、IOExceptionが{ // 。1、Cookieオブジェクトの作成 クッキークッキー= 新しい新しいクッキー( "MSG"、 "こんにちは" ); // クッキーの生存設定 // 生存負のデフォルト30秒0削除クッキー情報(クローズブラウザが消え) cookie.setMaxAge(30 ); // 2、送信クッキー response.addCookie(クッキー); } @Overrideが 保護 ボイドのdoGet(HttpServletRequestのリクエスト、HttpServletResponseの応答)スローServletExceptionが、IOExceptionが{ 本.doPost(リクエスト、レスポンス)。 } }
パッケージcom.Cookie.demo01を。 輸入javax.servlet.ServletException; 輸入javax.servlet.annotation.WebServlet; インポートのjavax.servlet.http.Cookie。 輸入javax.servlet.http.HttpServlet。 インポートのjavax.servlet.http.HttpServletRequest; インポートのjavax.servlet.http.HttpServletResponse; インポートにjava.io.IOException; / ** *获取クッキー * / @WebServlet( "/ CookieDemo02" ) のパブリック クラス CookieDemo02は拡張のHttpServletを{ @Overrideが 保護された 無効doPostメソッド(HttpServletRequestのリクエスト、HttpServletResponseの応答)がスローServletExceptionがは、IOException { // 3、获取クッキー クッキー[] CS = request.getCookies()。 // 获取数据、遍历クッキー の場合(CS =!ヌル){ のために(クッキーC:CS){ 文字列名 = c.getName(); 文字列値 = c.getValue()。 System.out.println(名前 + ":" + 値)。 } } } @Overrideは 保護され 、ボイドdoGet(HttpServletRequestのリクエスト、HttpServletResponseの応答)スローServletExceptionがは、IOException { この.doPost(要求、応答)。 } }
3、クッキーは、中国を保存することはできませんか?
* tmocat8クッキーは、中国のデータに直接格納することはできません前に、
*中国のデータのニーズが船のURLエンコード----トランスコードされる(%E3)
* Tomcat8クッキーデータが中国に保存することができた後、
4、クッキーの取得どの程度?
1、tmocatサーバを想定し、Webプロジェクトの数を展開し、クッキーは、これらのWebプロジェクトで共有することはできませんか?
*デフォルトでクッキーを共有することはできません
* SETPATH(文字列のパス):クッキーの取得範囲を設定します。デフォルトでは、現在の仮想ディレクトリを設定します
*あなたが共有したい場合は、「/」へのパスを設定することができます
2、異なるのTomcatサーバクッキーの共有の間に?
* SetDomain(文字列のパス):ドメイン名と同じ場合は、複数のサーバ間でクッキーが利用可能に共有します
* SetDomain( "Baiduの、COM")、その後、tieba.baidu.com news.baidu.comクッキーに共有することができます
5、クッキーの特性と機能
1、Cookieデータは、クライアントのブラウザに保存されています
2、(20)ブラウザは、単一のクッキーサイズのため(4キロバイト)制限されており、同じドメイン名でクッキーの合計数には限界があります
*役割:
1、クッキーは、一般的に少量のデータを格納するための感度が低いです
2、クライアントの識別にサーバーを、ログイン完了せず