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. intent--Activity之间数据传递之Intent数据传递

    intent传值: 4,intent传集合 3,intent传对象, 2,传递后有返回值的情况:当需要从目标Activity回传数据到原Activity时,可以使用上述方法定义一个新的Intent来传 ...

  2. 获取器操作都是针对数据而不是数据集的,要通过append()方法添加数据表不存在的字段

    获取器操作都是针对数据而不是数据集的,要通过append()方法添加数据表不存在的字段 public function getMembership(){ //加入会员s_id = 1 $busines ...

  3. 知识点:Mysql 基本用法之事务

    事务 事务用于将某些操作的多个SQL作为原子性操作,一旦有某一个出现错误,即可回滚到原来的状态,从而保证数据库数据完整性. 事务实例: create table user( id int primar ...

  4. 0009 - WebFlux

    1.概述 大多数场景使用MVC都是阻塞式的,WebFlux使用的场景是异步非阻塞的 响应式编程是基于异步和事件驱动的非阻塞程序,只是垂直通过在JVM内启动少量线程扩展,而不是水平通过集群扩展. Spr ...

  5. Java - 35 Java 实例

    Java 实例 本章节我们将为大家介绍 Java 常用的实例,通过实例学习我们可以更快的掌握 Java 的应用. Java 环境设置实例 Java 实例 – 如何编译一个Java 文件? Java 实 ...

  6. solr7.1.0学习笔记(10)---Solr发布到Tomcat

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/weixin_39082031/article/details/79069554 将solr作为一个单 ...

  7. Echarts动态加载柱状图和折线图混合展示的实例

    一.引入echarts文件: <script type="text/javascript" src="echarts.js"></script ...

  8. oracle SQL语句取本周本月本年的数据

    --国内从周一到周日 国外是周日到周六 select to_char(sysdate-1,'D') from dual;--取国内的星期几 去掉减一取国外的星期 --取本周时间内的数据 ,)+) an ...

  9. 04-spark streaming

    1.基本概念(了解) ①流(Streaming): 是一种数据传送技术,它把客户机收到的数据变成一个稳定连续的流,源源不断地送出,使用户听到的声音或看到的图象十分平稳, 而且用户在整个文件送完之前就可 ...

  10. nodejs学习笔记<二> 使用node创建基础服务器

    创建服务器的 server.js 内容. var http = require("http"); // 引用http模块 http.createServer(function(re ...