1、クッキーの基礎
クッキーは、クライアント側に保存されるテキストデータです。

セキュリティ上の制約、
・自分で発行したクッキーにしかアクセスできない。クッキーには発行元のホストの情報が記録されている。
・サイズや数の制限がある
 ァ、クッキーは全部で300個まで
 ィ、1個のクッキーのサイズは4Kバイトまで
 ゥ、サーバ、ドメインごとに20個まで
・クライアントでオフにできる(ブラウザの設定で)
・クッキーはHttpヘッダにより送受信されるので、危険。

2、クッキーの取得、設定
・リクエストで送られたクッキーは、HttpServletRequest.getCookies()で取得する
・レスポンス時にクッキーの追加は、HttpServletResponse.addCookie()を使用する

3、クッキー操作
クッキーの操作はjavax.servlet.http.Cookieインタフェースを利用する
・clone(): java.lang.Object.clone メソッドをオーバライドしています。
・getComment(): Cookieの目的を記述したコメントを返します。
・getDomain(): Cookie にセットされているドメイン名を返します。
・getMaxAge(): Cookie の最長存続期間の値を秒単位の数値で返します。
・getName(): Cookie の名前を返します。
・getPath(): ブラウザが送り返してきた Cookie に含まれているサーバ上のパスを返します。
・getValue(): Cookie の値を返します。
・setComment(): Cookieの目的を記述するコメントをセットします。
・setDomain(): ドメインを指定します。
・setValue(): Cookie が生成された後で、新しい値を設定します。
 等々

4、クッキーの有効期限
・ディフォルトは、ブラウザ終了するまで(セッションと同じ)
・setMaxAge()で期限設定可能

5、URLリライティング
クッキーが利用できない場合、同じクライアントであることを識別しセッションの維持方法として、URLリライティングがある。
URLリライティングは出力するHtmlの次のリンク部分にjsessionidというパラメータを付加することで実現される。
URLにjsessionidの付加は、HttpServletResponse.encodeURL()を使う。

URLリライティングの利用は、ブラウザの設定でクッキーをオフにしておく必要がある。

6、<HIDDEN>タグ
セッション情報を保存する手段の1つに、<HIDDEN>タグを利用する方法がある。
ただ、サブミット時に毎回<HIDDEN>タグも転送されるので、セキュリティや性能によくない。

Servlet基本_クッキー、URLリライティング的更多相关文章

  1. Servlet学习第一天--Servlet开发映射URL配置

    基础不扎实,从头学,认真记录笔记. 感谢@孤傲苍狼:http://www.cnblogs.com/xdp-gacl/p/3760336.html -为什么要配置? 由于客户端是通过URL访问web服务 ...

  2. Servlet基本_初期化パラメータ、外部ファイル

    1.サーブレットの初期化パラメータサーブレットの初期化パラメータを利用するには.必ずweb.xmlにおいてサーブレットマッピングを指定する必要がある.(Tomactのinvokerサーブレットは利用で ...

  3. Servlet基本_サーブレットのライフサイクル、スレッドセーフ

    1.サーブレットのライフサイクル初期化時 ⇒ init() [初回リクエスト時] ↓リクエスト時 ⇒service() ⇒doGet() [Httpリクエストメソッドにより振り分け] 或は⇒doPos ...

  4. -_-#URL区分大小写吗

    Should url be case sensitive?

  5. Servlet基本_セッション属性

    1.概念セッション: ユーザーごとの状態を保存する仕組みです.セッションID: アプリケーションサーバから一意の識別子が割り当てられ.これをセッションIDと言う. 2.サーブレットAPIサーブレットA ...

  6. Servlet基本_オブジェクトのスコープ

    1.スコープ種類Servletには以下のスコープがあります.Request.Session.Applicationの順にスコープは広くなっていきます.・Applicationスコープ:アプリケーション ...

  7. Servlet基本_画面遷移

    画面遷移方法は.下記ようがある.・リクエストのディスパッチ・リダイレクト(画面から) 1.ディスパッチ1)概念サーブレットから他のリソース(サーブレット.JSP.Htmlなど)にリクエストを転送するこ ...

  8. 利用spingmvc及servlet实现对url的地址去除后缀,更改后缀为html

    效果图 1.在web.xml中加上如下配置.其实就是利用servlet的目录过滤,这样所有带有news的地址都会被拦截 <!-- restfull风格约定,去除前台超链接访问的后缀 --> ...

  9. Servlet获取URL地址

    这里来说说用Servlet获取URL地址.在HttpServletRequest类里,有以下六个取URL的函数: getContextPath 取得项目名 getServletPath 取得Servl ...

随机推荐

  1. MySQL学习----索引的使用

    一.什么是索引?为什么要建立索引? 索引用于快速找出在某个列中有一特定值的行,不使用索引,MySQL必须从第一条记录开始读完整个表,直到找出相关的行,表越大,查询数据所花费的时间就越多,如果表中查询的 ...

  2. [UE4]限制杀人信息的显示数量

  3. 使用Excel随机函数产生大众评委的6位登录密码

    第一步:填写公式 如下图所示:选中B2单元格输入公式   =TEXT(ROUNDUP(RAND()*1000000,0),"000000") ,然后回车. 可复制的纯文本格式: = ...

  4. Python开发之AJAX

    一.概述 对于WEB应用程序:用户浏览器发送请求,服务器接收并处理请求,然后返回结果,往往返回就是字符串(HTML),浏览器将字符串(HTML)渲染并显示浏览器上. 1.传统的Web应用:一个简单操作 ...

  5. hive lateral view 与 explode详解

    ref:https://blog.csdn.net/bitcarmanlee/article/details/51926530 1.explode hive wiki对于expolde的解释如下: e ...

  6. python学习之----爬取图片

    import os from urllib.request import urlretrieve from urllib.request import urlopen from bs4 import ...

  7. Docker Basic

    1.简介 last 1.简介 1.1目的?一次编译.到处运行: 1.2.是什么? 实现[运行环境和配置文件的]软件容器,方便[持续集成]实现[整体发布]的容器虚拟化技术: 概括:整体发布的[容器虚拟化 ...

  8. iar stm32 启动代码片段分析

    今天查看了 iar 上面的启动文件,好奇堆栈指针到底是什么时候赋值的,所以就仔细的阅读了代码和相关手册,找到了答案. 首先,芯片启动后,会从ROM的首地址处进行执行,那么我们从 linker 里面找找 ...

  9. windows python读取grib2数据

    一.环境准备 (1).python3环境 (2).wgirb工具(用于读取grib1文件),下载地址:  ftp://ftp.cpc.ncep.noaa.gov/wd51we/wgrib (3).wg ...

  10. 《算法》第二章部分程序 part 3

    ▶ 书中第二章部分程序,加上自己补充的代码,包括各种优化的快排 package package01; import edu.princeton.cs.algs4.In; import edu.prin ...