分享

JSP中文问题解决方案超级大总结 (JSP/Servlet 技术)

 duduwolf 2006-06-24
1、JSP页面显示的中文问题
Page的第一行改成:<%@ page contentType="text/html; charset=UTF-8" %>
Head里加:<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

2、页面Form 内容提交的中文问题
1)只要把%TOMCAT安装目录%/ webapps\jsp-examples\WEB-INF\classes\filters\SetCharacterEncodingFilter.class文件拷到你的webapp目录下的filters下,如果没有filters目录,就创建一个。

2)在你的web.xml的</web-app>之前加入:
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>filters.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>


或者你不习惯用这个,可以在每个jsp页面里使用request.setCharacterEncoding("UTF-8");我个人感觉是一样的

3、get方式的解决办法

1) 打开tomcat的server.xml文件,找到区块,加入如下一行:URIEncoding="UTF-8"

完整的应如下:

<Connector port="8090" maxThreads="150" minSpareThreads="25"

maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true"
URIEncoding="UTF-8"/>

2)重启tomcat,一切OK。
当然还有最土的解决方案,虽然不太会用到,不过还是列出来,以备最无奈的时候使用:
String encodeStr=new String(fieldValue.getBytes("8859_1"), "UTF-8");

执行如下test.jsp页面,测试是否成功
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ page import="java.util.*"%>
<META http-equiv=Content-Type content="text/html;charset=UTF-8">
<%
String q=request.getParameter("q");
q = q == null?"没有值":q;
%>
<HTML>
<HEAD>
<TITLE>新闻列表显示</TITLE>
<body>你提交了:<%=q%><br>
<form action="test.jsp" method="post">
输入中文:<input type="text" name="q"><input type="submit" value="确定"> <br>
<a href="test.jsp?q=中国">通过get方式提交</a>
</form>
</BODY>
</HTML>

4、mysql的中文问题
首先要修改mysql配置文件的encoding为UTF-8,然后把jdbc connection改成如下:
jdbc:mysql://localhost:3306/bookuseUnicode=true;characterEncoding=UTF-8


备注:本文参考了网上的部分资料,谢谢大家的共享精神。
还有什么例外的情况,请大家积极补充

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多