当前位置:  编程技术>java/j2ee

jsp使用cookie存储中文示例分享

    来源: 互联网  发布时间:2014-10-20

    本文导语:  看J2EE的时候,看见书上讲到使用cookie保存信息的时,看到书上举得例子都是英文的键值对,我就想中文是不是一样呢?试了一下果然不一样。废话不多说,直接上代码: 比如说有addCookie.jsp代码如下: 代码如下:    增加cookie ...

看J2EE的时候,看见书上讲到使用cookie保存信息的时,看到书上举得例子都是英文的键值对,我就想中文是不是一样呢?试了一下果然不一样。废话不多说,直接上代码:

比如说有addCookie.jsp代码如下:

代码如下:



    增加cookie





在地址栏中输入localhost:8080/webDemo/addCookie.jsp?name=测试名字即可完成cookie添加。

下面就该是取出cookie了,getCookie.jsp代码如下:

代码如下:



    增加cookie





但是当在地址栏中输入localhost:8080/webDemo/getCookie.jsp时发现报错,造成这种情况是因为编码原因根据RFC 2109中的规定,在Cookie中只能包含ASCII的编码。

那么就只能在设置cookie时,将中文编码一下就行了。改进代码如下:

代码如下:



其他地方问题不大,就是在下面这段代码中,有人做的不一样。

代码如下:

byte[] rawName = name.getBytes("ISO-8859-1");
String strName = new String(rawName,"GB2312");//得到参数的中文字符串形式
Cookie c = new Cookie("username",URLEncoder.encode(strName,"UTF-8"));

我搜了很多资料,都只有一段代码,形如:Cookie c = new Cookie("username",URLEncoder.encode("孙悟空","UTF-8"));

把中文直接放在encode方法的参数位置,看起来可以直接在name=request.getParameter("name");后就调用上面的Cookie c = new Cookie("username",URLEncoder.encode(name,"UTF-8"));代码段,看起来好像没有错,但是我实践中发现会产生乱码,我用的是火狐浏览器,然后我就加了两段代码,就是:byte[] rawName = name.getBytes("ISO-8859-1");
String strName = new String(rawName,"GB2312");才没有产生乱码,具体为什么会产生这样的原因,我尚不知道,不知哪位大神可以解释一下。


    
 
 

您可能感兴趣的文章:

  • JSP 获取Spring 注入对象示例
  • jsp页面获取服务器时间的简单调用示例
  • JSP父页面传参数到子页面及接收示例
  • JSP代码实现 金字塔(倒置)示例
  • jsp与sql语句的混合使用示例
  • jsp传值中文乱码问题解决方法示例介绍
  • JSP页面的动态包含和静态包含示例及介绍
  • JSP中使用JDBC访问SQL Server 2008数据库示例
  • jsp中定义和使用方法示例介绍
  • jsp 文件下载示例代码
  • jsp页面间传中文参数示例(页面传参数编码)
  • jsp自定义标签之ifelse与遍历自定义标签示例
  • jsp和asp.net共享session值示例代码
  • 用jsp页面生成随机的验证数字码示例
  • jsp读取大对象CLOB并生成xml文件示例
  • jsp form表单方法示例
  • java和jsp中的request使用示例
  • jquery easyui 结合jsp简单展现table数据示例
  • JSP和JSTL获取服务器参数示例
  • jsp简单自定义标签的forEach遍历及转义字符示例
  • jsp中文乱码 jsp mysql 乱码的解决方法
  • 想把一个jsp转到另一个jsp页面,要穿参数,中文的(jsp变量)。谁教教我?!
  • 字符集问题--jsp中charset参数值的简体中文值是什么,GB2312是繁体中文吧?
  • 请教:关于英文,简体中文,繁体中文在JSP/JAVA中的整体解决方案!!!
  • 在forte for java 4的Source Editor中编辑jsp时候,可以输入中文,可是保存后关闭再打开,中文显示???,怎么回事啊
  • 请教:关于英文,简体中文,繁体中文在JSP/JAVA中的整体解决方案!!!!!
  • jsp和JAVABEAN的中文显示问题
  • 为什么JSP在JB6.0中显示正常(中文可以显示),但在IE6.0中无法正常显示(中文全为乱码)???
  • JSP的中文问题,如何在<form>中提交中文,用,request.getParameter收中文啊?
  • solaris 里面JSP get方式传中文参数 出现乱码的问题
  • 各位高手:jsp文件包含jsp文件时的中文问题
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 怎样用JSP将从树状存储结构中读取的数据在JSP页面上生成一个树状目录
  • 请问jsp怎么调用后台的存储过程?
  • 采用Jsp从数据库中取得数据,来生成XML文件,进行存储,应该如何做?
  • jsp中如何调用存储过程???
  • JSP中文存储问题!(高分求教)
  • JSP高手请进:如何才能把表单中提交的值传递到存储过程中的参数中?
  • 如何jsp中调用存储过程
  • SQL_Server中存储的图象怎样用jsp显示出来
  • 请教一个关于在JSP中调用DB2中存储过程中的游标的问题?
  • 祝大家中秋快乐啊!!!快帮我看看啊,jsp调用存储过程的问题,急急急!!高分!!!
  • 请问如何在jsp中调用数据库的存储过程? 谢谢
  • JSP动态生成验证码存储在session作用范围内
  • 请教啦,如何把数据库中blob字段存储的图片在jsp页面中显示出来?
  • 我已经在输出前包含了<jsp:include page="2.jsp"/>, iis7站长之家
  • 现有1.jsp、2.jsp、3.jsp三个文件,我怎么在3.jsp文件中得到1.jsp中输入的值?
  • 一个框界网爷包含上下两个网页a1.jsp和a2.jsp,怎么实现a1.jsp自身不变且提交数据到下面的a2.jsp呢?不胜感激,急..
  • 请问jsp和serlet之间怎么通讯,jsp和jsp之间呢?
  • 请问<%@include file="abc.jsp"%>与<jsp:include page="abc.jsp"/>之间的差别
  • response.sendRedirect("index.jsp") 和 <jsp:forward page="index.jsp"/>的区别?
  • aaa.jsp有如下链接,当单击该链接时将id值传递给bbb.jsp,怎样在bbb.jsp中引用这个id值?
  • jsp+bean还是jsp+ejb还是jsp+servlet还是asp+activex好?
  • 谁能告诉我,怎么调试jsp程序呀!我在jsp中调用java,但是Tomcat这家伙只会给我报jsp文件出错。这可怎么办呀?
  • jsp中如何获得当前jsp文件所在的目录,用request.getServletPath()得到的路径含有jsp文件名,有没有办法得到目录(不含文件名)?
  • 初学jsp,一个html调用一个jsp,这个jsp调用一个javaBean,已编译成类,最后如何部署(用j2sdkee)?
  • 我要学jsp,已经下载了j2ee1.4,需要一个支持jsp引擎的WEB服务器或jsp引擎!!(急,马上给分)
  • jsp中相对路径怎么表示?例如当前目录下的jsp目录里的文件。
  • 我已经在输出前包含了<jsp:include page="2.jsp"/>,
  • 欲学JSP,请教JSP资料,最好电子版。
  • jsp+JavaBean vs jsp+Servlet+JavaBean
  • JSP/html 编辑器 Bravo JSP editor
  • JSP开发入门(五)--JSP其他相关资源


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3