MyEclipse开发的Web项目编码问题解决
一、开发工具中可以修改编码的地方:
1)Window --> Preferences --> General --> Content Types --> Text
选择要设置的文件,在Default encoding 中输入【GBK或者UTF-8】,点击后面的update
2)Window --> Preferences --> Workspace --> Text file encoding
在Other后面的选择框中输入【GBK或者UTF-8】,点击Applay和OK
3)右键点击项目、文件。选择Properties --> Text file encoding
同样在Other后面的选择框中输入【GBK或者UTF-8】,点击Applay和OK
二、文件中可以修改编码的地方:
仅限于jsp文件和html文件等声明部分有编码设置的文件,
1)<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
2)<meta http-equiv="Content-Type" content="text/html; charset=GBK" />
三、用过滤器实现编码过滤
1)过滤器处理类
创建一个实现了Filter接口的java类
package com.hchx.filter; 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; /** * * @ClassName: CharacterFilter * @Description: |-- 编码过滤器的实现类 * @author GNODIAD * @date 2014-11-13 上午09:27:50 */ public class CharacterFilter implements Filter{ // 声明代码处理参数 private String srcCharset; private String targetCharset; public void destroy() { // TODO 待实现方法 } public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { System.out.println("开始进行编码过滤...");// 在控制台打印提示信息 request.setCharacterEncoding(srcCharset);// 设置请求编码 response.setCharacterEncoding(targetCharset);// 设置响应编码 chain.doFilter(request, response); // 向后传递 } public void init(FilterConfig config) throws ServletException { srcCharset = config.getInitParameter("srcCharSet"); targetCharset = config.getInitParameter("targetCharSet"); } }
2)在web.xml中配置过滤器
<filter> <filter-name>charset</filter-name> <filter-class>com.hchx.filter.CharacterFilter</filter-class> <init-param> <param-name>srcCharSet</param-name> <param-value>GBK</param-value> </init-param> <init-param> <param-name>targetCharSet</param-name> <param-value>GBK</param-value> </init-param> </filter> <filter-mapping> <filter-name>charset</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
小结:解决编码问题,从这三个方面入手,具体操作因个人开发的项目而异。
本文出自 “GNODIAD” 博客,请务必保留此出处http://gnodiad.blog.51cto.com/9569162/1575961
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。