- 浏览: 351059 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (160)
- webservice (2)
- 数据库开发 (9)
- LINUX (6)
- 团队协作 (5)
- 前端技术 (4)
- J2EE (31)
- web服务器 (9)
- 经验常识 (12)
- 开发工具 (17)
- 项目管理 (7)
- 重构与设计模式 (8)
- 安全技术 (1)
- 并发编程 (1)
- 移动互联网 (2)
- 编码风格 (1)
- 领域建模 (1)
- 随想杂记 (12)
- 翻译 (2)
- 问题排查 (2)
- 数据挖掘 (4)
- 软件架构 (1)
- java语言基础知识 (13)
- 文件读写 (1)
- mac研发笔记 (1)
- 网络问题 (1)
- python学习 (0)
- Java8新特性 (1)
- soft kes collections (1)
最新评论
-
cremains:
...
java8新特性学习笔记 -
bingyingao:
guooo 写道很好的总结,不知能否转载?可以,多谢关注
又四年了,再看如何快速融入一个新团队 -
guooo:
很好的总结,不知能否转载?
又四年了,再看如何快速融入一个新团队 -
omeweb:
又过了好几年了,有啥新感悟没有?
两年已过去,再看该如何快速融入新团队 -
kely39:
感谢楼主,问题已解决
包冲突问题的解决方法
一般来说有两种办法,在JSP中使用Java的嵌入脚本.
例如:
写入Cookie
<html>
<head>........(中间略)
</head>
<body>
<%
String cookieName="Sender";
Cookie cookie=new Cookie(cookieName, "Test_Content");
cookie.setMaxAge(10);
response.addCookie(cookie);
%>
........(其他内容)
</body>
</html>
这样我们就设置了一个Cookie.
仔细研究一下这段代码:
Cookie cookie=new Cookie(cookieName, "Test_Content");
这一行建立了一个Cookie对象,初始化有两个参数,第一个参数cookieName定义了Cookie的名字,后一个参数,也是一个字符串,定义了Cookie的内容。也就是我们希望网页在用户的机器上标识的文件内容。
接下来一行:cookie.setMaxAge(10),调用了Cookie中的setMaxAge方法,设定Cookie在用户机器硬盘上的存活期为10秒。一个Cookie在用户的硬盘里面存在的时间并不是无限期的,在建立Cookie对象的时候,我们必须制定Cookie的存活期,超过了这个存活期后,Cookie文件就不再起作用,会被用户的浏览器自行删除。如果我们希望用户在下次访问这个页面的时候,Cookie文件仍然有效而且可以被网页读出来的话,我们可以将Cookie的存活期设得稍微长一些。比如cookie.setMaxAge(365*24*60*60)可以让Cookie文件在一年内有效。
读出Cookie
Cookie文件创建好后,自然还需要我们把它读出来,否则我们不是白费力气吗?接下来我们看看如何读出在用户硬盘上的Cookie。
<html>
<head>........(中间略)
</head>
<body>
<table border=1>
<tr><td>Name</td><td>value</td></tr>
<%
Cookie cookies[]=request.getCookies();
Cookie sCookie=null;
String svalue=null;
String sname=null;
for(int i=0;i<cookies.length;i++)
{
sCookie=cookies[i];
svalue=sCookie.getValue();
sname=sCookie.getName();
%>
<tr><td><%=name%></td><td><%=svalue%></td></tr>
<%
}
%>
</table>
........(其他内容)
</body>
</html>
这一小段JSP文件可以读出用户硬盘上的所有有效的Cookie,也就是仍然在存活期内的Cookie文件。并用表格的形式列出每个Cookie的名字和内容。
我们来逐行分析一下这段代码:
Cookie cookies[]=request.getCookies() 我们用request.getCookies()读出用户硬盘上的Cookie,并将所有的Cookie放到一个cookie对象数组里面。
接下来我们用一个循环语句遍历刚才建立的Cookie对象数组,我们用sCookie=cookies[i]取出数组中的一个Cookie对象,然后我们用sCookie.getValue()和sCookie.getName()两个方法来取得这个Cookie的名字和内容。
通过将取出来的Cookie的名字和内容放在字符串变量中,我们就能对其进行各种操作了。在上面的例子里,可通过循环语句的遍历,将所有Cookie放在一张表格中进行显示。
通过上面两个简单的例子,可以看到,用JSP进行Cookie的操作,是非常简单的。不过我们在实际操作中还要注意一些问题:
1. Cookie的兼容性问题
Cookie的格式有2个不同的版本,第一个版本,我们称为Cookie Version 0,是最初由Netscape公司制定的,也被几乎所有的浏览器支持。而较新的版本,Cookie Version 1,则是根据RFC 2109文档制定的。为了确保兼容性,JAVA规定,前面所提到的涉及Cookie的操作都是针对旧版本的Cookie进行的。而新版本的Cookie目前还不被Javax.servlet.http.Cookie包所支持。
2. Cookie的内容
同样的Cookie的内容的字符限制针对不同的Cookie版本也有不同。在Cookie Version 0中,某些特殊的字符,例如:空格,方括号,圆括号,等于号(=),逗号,双引号,斜杠,问号,@符号,冒号,分号都不能作为Cookie的内容。这也就是为什么我们在例子中设定Cookie的内容为“Test_Content”的原因。
虽然在Cookie Version 1规定中放宽了限制,可以使用这些字符,但是考虑到新版本的Cookie规范目前仍然没有为所有的浏览器所支持,因而为保险起见,我们应该在Cookie的内容中尽量避免使用这些字符。
另一种方法是用Javascript脚本来操作Cookie
两种方法操作Cookie的具体方法可以这样查到:
在baidu中搜索关键字:JSP Cookie或是Javascript Cookie即可看到你想要的信息.
例如:
写入Cookie
<html>
<head>........(中间略)
</head>
<body>
<%
String cookieName="Sender";
Cookie cookie=new Cookie(cookieName, "Test_Content");
cookie.setMaxAge(10);
response.addCookie(cookie);
%>
........(其他内容)
</body>
</html>
这样我们就设置了一个Cookie.
仔细研究一下这段代码:
Cookie cookie=new Cookie(cookieName, "Test_Content");
这一行建立了一个Cookie对象,初始化有两个参数,第一个参数cookieName定义了Cookie的名字,后一个参数,也是一个字符串,定义了Cookie的内容。也就是我们希望网页在用户的机器上标识的文件内容。
接下来一行:cookie.setMaxAge(10),调用了Cookie中的setMaxAge方法,设定Cookie在用户机器硬盘上的存活期为10秒。一个Cookie在用户的硬盘里面存在的时间并不是无限期的,在建立Cookie对象的时候,我们必须制定Cookie的存活期,超过了这个存活期后,Cookie文件就不再起作用,会被用户的浏览器自行删除。如果我们希望用户在下次访问这个页面的时候,Cookie文件仍然有效而且可以被网页读出来的话,我们可以将Cookie的存活期设得稍微长一些。比如cookie.setMaxAge(365*24*60*60)可以让Cookie文件在一年内有效。
读出Cookie
Cookie文件创建好后,自然还需要我们把它读出来,否则我们不是白费力气吗?接下来我们看看如何读出在用户硬盘上的Cookie。
<html>
<head>........(中间略)
</head>
<body>
<table border=1>
<tr><td>Name</td><td>value</td></tr>
<%
Cookie cookies[]=request.getCookies();
Cookie sCookie=null;
String svalue=null;
String sname=null;
for(int i=0;i<cookies.length;i++)
{
sCookie=cookies[i];
svalue=sCookie.getValue();
sname=sCookie.getName();
%>
<tr><td><%=name%></td><td><%=svalue%></td></tr>
<%
}
%>
</table>
........(其他内容)
</body>
</html>
这一小段JSP文件可以读出用户硬盘上的所有有效的Cookie,也就是仍然在存活期内的Cookie文件。并用表格的形式列出每个Cookie的名字和内容。
我们来逐行分析一下这段代码:
Cookie cookies[]=request.getCookies() 我们用request.getCookies()读出用户硬盘上的Cookie,并将所有的Cookie放到一个cookie对象数组里面。
接下来我们用一个循环语句遍历刚才建立的Cookie对象数组,我们用sCookie=cookies[i]取出数组中的一个Cookie对象,然后我们用sCookie.getValue()和sCookie.getName()两个方法来取得这个Cookie的名字和内容。
通过将取出来的Cookie的名字和内容放在字符串变量中,我们就能对其进行各种操作了。在上面的例子里,可通过循环语句的遍历,将所有Cookie放在一张表格中进行显示。
通过上面两个简单的例子,可以看到,用JSP进行Cookie的操作,是非常简单的。不过我们在实际操作中还要注意一些问题:
1. Cookie的兼容性问题
Cookie的格式有2个不同的版本,第一个版本,我们称为Cookie Version 0,是最初由Netscape公司制定的,也被几乎所有的浏览器支持。而较新的版本,Cookie Version 1,则是根据RFC 2109文档制定的。为了确保兼容性,JAVA规定,前面所提到的涉及Cookie的操作都是针对旧版本的Cookie进行的。而新版本的Cookie目前还不被Javax.servlet.http.Cookie包所支持。
2. Cookie的内容
同样的Cookie的内容的字符限制针对不同的Cookie版本也有不同。在Cookie Version 0中,某些特殊的字符,例如:空格,方括号,圆括号,等于号(=),逗号,双引号,斜杠,问号,@符号,冒号,分号都不能作为Cookie的内容。这也就是为什么我们在例子中设定Cookie的内容为“Test_Content”的原因。
虽然在Cookie Version 1规定中放宽了限制,可以使用这些字符,但是考虑到新版本的Cookie规范目前仍然没有为所有的浏览器所支持,因而为保险起见,我们应该在Cookie的内容中尽量避免使用这些字符。
另一种方法是用Javascript脚本来操作Cookie
两种方法操作Cookie的具体方法可以这样查到:
在baidu中搜索关键字:JSP Cookie或是Javascript Cookie即可看到你想要的信息.
发表评论
-
log4j关键点
2013-09-25 19:43 1049日志级别 级别顺序(低到高): DEBUG < INFO ... -
java集合排序
2013-09-24 19:18 1112java对象集合排序在开发中使用非常广泛,需要重点理解,而它实 ... -
关于java.lang.OutOfMemoryError的参数配置误区
2013-09-10 15:10 1114这两天在本机用eclipse的jetty插件跑项目,老是抛出一 ... -
spring这样的来配置一些常量很方便
2013-09-03 09:48 2491<util:list id="haidilao ... -
快速查找线程死锁(展苍)
2012-12-23 13:25 0Thread dump Thread dump是比较容易查找 ... -
javap查看虚拟机为你做了什么
2012-12-02 15:38 551public class Test { publi ... -
javaweb开发乱码问题整理
2012-03-15 14:01 991j2ee方面的开发总会遇到各种各样的乱码问题,总想抽空整理一下 ... -
用正则表达式扣出字符串中指定的多处内容
2011-12-26 15:29 1441截取打印出所有<record></recor ... -
java反射机制学习
2011-11-19 13:01 1034反射基本概念: 在java ... -
java匿名内部类使用场景列举
2011-11-18 10:57 2605java内部类是怎么一回事?匿名内部类何时会用到,之前一直很模 ... -
使用UUID生成32位ID
2011-11-14 11:11 21314UUID(Universally Unique Identif ... -
java数据类型介绍
2011-11-09 14:34 949java数据类型介绍 简单类型大小范围/精度 ... -
Exception点滴
2011-11-08 14:24 939java.lang.reflect.UndeclaredThr ... -
将set集合转为list并对对象进行排序
2011-11-06 15:09 7729之前用hibernate的时候,遇到一对多的表结构。比如班级( ... -
src地址为空导致两次进入到action请求地址
2011-10-29 13:05 1522今天用struts开发一个页面,奇怪的是我点了一次提交,达到目 ... -
struts标签与ognl表达式用法点滴
2011-10-27 18:43 1399struts标签的使用中,会涉及一些比较细的点儿,汇总一下,以 ... -
struts2第四回:工作流程解析
2011-10-14 15:18 866这两天没什么任务,就想研究一下struts2的源码,看了半天, ... -
struts2第三回:自定以拦截器
2011-10-13 19:14 1088实现一个拦截器并调用。 ============下面是Logi ... -
struts2第二回:防止重复提交
2011-10-13 18:51 2258基本原理:用户访问做了重复提交的页面,服务器会生成一个令牌,这 ... -
include与jsp:include与s:action与s:include与iframe用法汇总
2011-10-13 13:47 207031.<%@ include file="../ ...
相关推荐
在JSP中,可以通过`request.getCookies()`方法从客户端读取Cookie。这个方法返回一个Cookie对象数组,代表了所有接收到的Cookies。然后,可以通过循环遍历这个数组,使用`getName`和`getValue`方法来识别和读取特定...
在JSP中读取Cookie,我们可以利用HttpServletRequest对象的`getCookies()`方法,该方法返回一个Cookie数组,包含了所有发送到服务器的Cookie。以下是一个读取Cookie的例子: ```jsp ; charset=UTF-8" %> Cookie[]...
1. **创建Cookie**:在JSP中,我们可以使用`HttpServletResponse`对象的`addCookie()`方法来创建和添加新的Cookie。 2. **设置属性**:每个Cookie都有一个名称和值,还可以设置过期时间、路径、域等属性。例如,我们...
4. **读取Cookie**:在Servlet中,可以通过`request.getCookies()`获取所有Cookie,然后遍历这些Cookie,使用`getName`和`getValue`等方法查找并获取特定Cookie的值。 #### 三、Cookie的详细属性及其操作 - **`...
Cookie是Web开发中的一种技术,...在JSP中,利用Cookie类提供的方法,我们可以轻松创建、修改和读取Cookie,从而提供更加个性化的用户体验和服务。理解并熟练掌握Cookie的使用对于任何Web开发者来说都是至关重要的。
JSP 中的 Cookie 使用方法 在 JSP 中,Cookie 是一种常用的技术,用于在客户端存储数据,以便在后续的访问中使用。下面是 JSP 中 Cookie 的使用方法,包括向客户端发送 Cookie、从客户端读取 Cookie 和使用 Cookie ...
**JSP中的Cookie自动登录详解** 在Web开发中,为了提供更好的用户体验,许多网站和应用程序实现了自动登录功能,比如我们常见的QQ自动登录。这个功能可以让用户在打开应用或网站时无需每次都输入用户名和密码,极大...
这通常在`<jsp:useBean>`或`<jsp:setProperty>`动作标签中完成,或者在Servlet的`doGet`或`doPost`方法中处理: ```java Cookie[] cookies = request.getCookies(); if (cookies != null) { for (Cookie c : ...
要从客户端读取Cookie,我们可以在JSP的`<jsp:useBean>`或Servlet的`doGet()`或`doPost()`方法中检查Cookie是否存在,如下所示: ```jsp Cookie[] cookies = request.getCookies(); if (cookies != null) { for...
要将Cookie发送到客户端,需要使用`HttpServletResponse`对象的`addCookie`方法: ```java response.addCookie(newCookie); ``` 3. **设置Cookie属性** Cookie有一些可设置的属性,例如有效期、路径、域等: ...
### JSP中Cookie的使用详解 #### 一、Cookie的概念 Cookie是一种小型的数据存储机制,主要功能是在客户端(通常是浏览器)存储信息。这种机制允许服务器通过HTTP响应将数据发送到客户端,然后在后续请求中,客户端...
在服务器端的`saveHistory.jsp`中,接收这个Ajax请求,按照前面的方法更新Cookie。 6. **读取和显示历史记录**:当用户返回网站时,JSP可以从Cookie中读取历史记录,并在适当的地方显示,例如在一个下拉菜单或侧边...
### jsp中session使用方法详解 #### 一、引言 在Web开发中,会话管理是一项非常重要的功能,特别是对于需要保持用户状态的应用程序来说更是如此。在Java Web开发中,`HttpSession`接口提供了在多页面请求之间保存...
在JSP中创建和读取Cookie非常方便,可以通过`Cookie`类的实例化和`HttpServletRequest`对象的`getCookies`方法来实现。 **写入Cookie:** ```jsp Cookie cookie = new Cookie(cookieName, "cookie_Content"); ...
本示例主要探讨了如何在JSP中使用Cookie存储和读取中文数据。 首先,我们来看添加Cookie的步骤。在`addCookie.jsp`中,我们获取请求参数`name`,然后创建一个新的Cookie对象。关键在于,当`name`包含中文字符时,...
4. **读取Cookie**:当用户再次访问网站时,服务器在`HttpServletRequest`对象的`getCookies()`方法中获取所有的Cookie。检查是否存在自动登录所需的Cookie,例如"username"。 5. **验证Cookie**:对获取到的Cookie...
### JAVA中Cookie的使用详解 #### 一、Cookie的基本概念 在Web开发中,Cookie是一种在客户端存储数据的...通过上述方法,开发者可以在Java Web应用中有效地管理和使用Cookie,从而提高用户体验并实现更高级的功能。
在这个名为"jsp源码实例.rar_cookie_javascript cookie_jsp 实例_jsp 搜索_jsp 表单"的压缩包中,包含了五个关于JSP的源码实例,这些实例涵盖了从基本的输出操作到更复杂的cookie管理和搜索引擎功能。以下是这些实例...
- **读取Cookie**:在后续的JSP页面中,可以通过`HttpServletRequest`对象的`getCookies()`方法获取Cookie数组,然后根据键值对找到存储的用户信息。 ```java Cookie[] cookies = request.getCookies(); for (Cookie...
本文将详细讲解Cookie的概念、用途以及如何在JSP(Java Server Pages)中创建和处理Cookie。 一、Cookie基础 Cookie是由WEB服务器发送到浏览器的一小段文本信息,存储在用户的硬盘上。当用户再次访问同一个网站时,...