firefox英文版:JSP HTML JAVASCRIPT 中文乱码 解决方案 大全
来源:百度文库 编辑:偶看新闻 时间:2024/04/28 12:08:53
JSP的中文字符一直是各位初学者首先要解决的问题,下面进行了总结,也给出了解决办法。
C4.1 HTML中文编码转换
在JSP文件中的静态文字显示乱码,则需要在之间增加中文设置代码,如清单附C-5所示。
charset指定UTF-8字符集,当然也可以指定其他支持中文的编码,如GBK和GB2312。但是整个Web应用中一定要统一一种编码,本书推荐统一为UTF-8编码。
C4.2 JSP中文编码转换
针对Tomcat下动态内容的中文乱码问题,有以下几个解决办法:
1. 在每个JSP文件的开头增加如下代码:
<%@ page language="java" contentType="text/html;charset=UTF-8"
pageEncoding="UTF-8"%>
2. 设置编码参数:
request.setCharacterEncoding("UTF-8");
3. 使用编码过滤器。创建过滤器类SetCharacterEncoding,源码如清单附C-5所示。
清单附C-5 SetCharacterEncoding.java
package chapc;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class SetCharacterEncoding implements Filter {
@Override
public void destroy() {
}
@Override
public void doFilter(ServletRequest request, ServletResponseresponse,
FilterChain chain) throws IOException, ServletException{
//设置字符编码
request.setCharacterEncoding("UTF-8");
//将控制传到下一个过滤器,如果没有过滤器则传到被调用者
chain.doFilter(request, response);
}
@Override
public void init(FilterConfig arg0) throws ServletException{
}
}
过滤器类还需要在web.xml中进行配置,设定要过滤哪些请求。过滤器在web.xml中的配置如清单附C-6所示。
清单附C-6 web.xml片段
SetCharacterEncoding
chapc.SetCharacterEncoding
SetCharacterEncoding
/*
方法1、方法2和方法3经常需要使用,但它们一般不是独立使用,而是两两结合:1和2结合;1和3结合。附录A中的示例用到了1和2的结合。第四章Hibernate中的信息发布系统用到了1和3的结合。
4.修改Tomcat根目录中conf子目录下的server.xml文件,在中加入URIEncoding="UTF-8",如清单附C-7所示。
清单附C-7 server.xml片段
port="8080"
protocol="HTTP/1.1"
redirectPort="8443"
URIEncoding="UTF-8"/>
该方法用来解决浏览器地址栏中的传递中文参数导致的乱码问题。浏览器地址栏传递参数(URL传参)一般表现为三种情况:form表单的get方法提交、超链接传参和response传参。
Ø form表单提交方法是get:
C4.1 HTML中文编码转换
在JSP文件中的静态文字显示乱码,则需要在之间增加中文设置代码,如清单附C-5所示。
charset指定UTF-8字符集,当然也可以指定其他支持中文的编码,如GBK和GB2312。但是整个Web应用中一定要统一一种编码,本书推荐统一为UTF-8编码。
C4.2 JSP中文编码转换
针对Tomcat下动态内容的中文乱码问题,有以下几个解决办法:
1. 在每个JSP文件的开头增加如下代码:
<%@ page language="java" contentType="text/html;charset=UTF-8"
pageEncoding="UTF-8"%>
2. 设置编码参数:
request.setCharacterEncoding("UTF-8");
3. 使用编码过滤器。创建过滤器类SetCharacterEncoding,源码如清单附C-5所示。
清单附C-5 SetCharacterEncoding.java
package chapc;
imp
imp
imp
imp
imp
imp
imp
public class SetCharacterEncoding implements Filter {
@Override
public void destroy() {
}
@Override
public void doFilter(ServletRequest request, ServletResponseresponse,
FilterChain chain) throws IOException, ServletException{
//设置字符编码
request.setCharacterEncoding("UTF-8");
//将控制传到下一个过滤器,如果没有过滤器则传到被调用者
chain.doFilter(request, response);
}
@Override
public void init(FilterConfig arg0) throws ServletException{
}
}
过滤器类还需要在web.xml中进行配置,设定要过滤哪些请求。过滤器在web.xml中的配置如清单附C-6所示。
清单附C-6 web.xml片段
方法1、方法2和方法3经常需要使用,但它们一般不是独立使用,而是两两结合:1和2结合;1和3结合。附录A中的示例用到了1和2的结合。第四章Hibernate中的信息发布系统用到了1和3的结合。
4.修改Tomcat根目录中conf子目录下的server.xml文件,在中加入URIEncoding="UTF-8",如清单附C-7所示。
清单附C-7 server.xml片段
port="8080"
protocol="HTTP/1.1"
redirectPort="8443"
URIEncoding="UTF-8"/>
该方法用来解决浏览器地址栏中的传递中文参数导致的乱码问题。浏览器地址栏传递参数(URL传参)一般表现为三种情况:form表单的get方法提交、超链接传参和response传参。
Ø form表单提交方法是get:
html,jsp,javascript各司何职?
怎样不通过asp或php或jsp,而只用在html中用javascript实现网页搜索
JSP JavaScript charAt()用法
html中的 Javascript 是什么?
SplineTech JavaScript html 下载
javascript,html高手进
学习jsp都除了需要java,html(xml),javascript,还需要哪些方面的知识,请指教一下,谢谢
jsp与javascript的区别!?
HTML,JavaScript,是这么意思?
把 html 转换成 jsp
如何从javascript向jsp传递变量?
关于JSP和javascript的东东,达人乱入
javascript和jsp中的变量能否互通?
JSP javabean javascript有什么区别?
JavaScript与JSP有何不同
JAVASCRIPT 和JSP是同一个东西么?
javascript和jsp有什么区别
JSP中 超级连接能加JAVASCRIPT吗
java,jsp,javascript相互之间是什么关系?
做美工不懂html 和Javascript行吗
html中javascript如何禁止网页弹出
如何在html中调用javascript
JavaScript如何操作HTML元素,css,浏览器
关于html中javascript的语句