您可以参考手动转码的方法来解决乱码问题:
String s = request.getP...("xxx");
// s 是 iso 编码的乱码
s = new String(
s.getBytes("ISO-8859-1"),
"UTF-8");
SP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它[1] 是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。
服务器默认使用 ISO-8859-1 编码接受参数
服务器端
-------------------------------
1. 手动转码
String s = request.getP...("xxx");
// s 是 iso 编码的乱码
s = new String(
s.getBytes("ISO-8859-1"),
"UTF-8");
2. POST
request.setCharacterEncoding("UTF-8");
3. GET
Tomcat 设置:
server.xml 中配置:
maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true"
URIEncoding="UTF-8"
/>
客户端脚本
---------------------------------------
encodeURL("含特殊字符的字符串")
将字符串以 UTF-8 字符集进行编码
全部改成UTF-8,,或者是
___wuding 的
String XXXX = new String(request.getParameter("XXX").getBytes("ISO-8859-1"),"UTF-8");
貌似这句话有问题啊~
你将servlet里面的编码和jsp页面的编码设置成一致的
response.setContentType("text/html; charset=GBK");
request.setCharacterEncoding("GBK");
在Web.xml里面配置个过滤器filter,并且创建一个filter类
在Servlet类里面加上request.setCharacterEncoding("GBK");
把你eclipse或myeclipse里面的编码方式改成GBK
还有你的jsp页面的编码方式也改成GBK 就好了