jsp地址栏传中文显示乱码解决方法分享
在JSP页面传递中文参数时,经常会遇到乱码的问题。以下介绍了一种jsp地址栏传中文显示乱码解决方法,供有需要的朋友参考。
我们来看第一个页面test1.jsp。假设我们需要传递一个名为“王云鹏”的中文字符串到test2.jsp页面。我们在链接中使用JSP的内置函数java.URLEncoder进行编码处理,代码如下:
`
test1.jsp页面 代码如下: <%@ page language="java" import="java.util." pageEncoding="utf-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>My JSP 'test1.jsp' starting page</title> </head> <body> <a href="test2.jsp?name=<%=java.URLEncoder.encode("王云鹏","utf-8") %>">test2.jsp</a> </body> </html>
`此处我们使用UTF-8编码对字符串进行编码,确保在传输过程中保持正确的字符集。然后,我们将编码后的字符串通过URL参数的形式传递给test2.jsp页面。
在test2.jsp页面中,我们需要对这个URL参数进行解码处理。由于Tomcat服务器默认使用ISO-8859-1字符集来处理URL参数,因此在解码前需要进行相应的转换。以下是test2.jsp页面的代码:
`
test2.jsp页面 代码如下: <%@ page language="java" import="java.util." pageEncoding="utf-8"%> <%
String name = request.getParameter("name"); //获取Tomcat默认的ISO-8859-1编码的字符串
byte[] names = java.URLEncoder.encode(name,"ISO-8859-1").getBytes(); //获取Tomcat内部的字节内容
name = new String(names,"utf-8"); //获取URL的字符串,以UTF-8格式处理
name = java.URLDecoder.decode(name,"utf-8"); //解码字符串至中文单词
%>
在这段代码中,我们首先通过request对象获取URL参数,然后使用java.URLDecoder进行解码处理,得到原始的中文字符串。这样,我们就可以在test2.jsp页面中正常显示传递过来的中文参数了。这种方法可以有效地解决JSP地址栏传中文显示乱码的问题。希望这个方法能对大家有所帮助。
编程语言
- jsp地址栏传中文显示乱码解决方法分享
- 浅谈php的TS和NTS的区别
- react实现pure render时bind(this)隐患需注意!
- 编程趣事:当下流行编程语言的”讨厌”程度排
- PHP定时执行任务的3种方法详解
- nodejs的HTML分析利器node-jquery用法浅析
- javascript实现延时显示提示框效果
- SQLSERVER 中GO的作用详解
- SQLServer 使用rand获取随机数的操作
- 跨浏览器PHP下载文件名中的中文乱码问题解决方
- 浅谈javascript的url参数parse和build函数
- 省市县三级联动的SQL语句
- ES6新增数据结构WeakSet的用法详解
- 学习JavaScript编程语言的8张思维导图分享
- 解决采集时出现msxml3.dll 错误的方法
- 基于滚动条位置判断的简单实例