解析有关jsp和servlet中的乱码问题
发布时间:2023-07-20 14:36:59 所属栏目:教程 来源:
导读:在jsp和servlet的开发中,今天自己做的一个小例子中出现了中文乱码问题,用了许多方法,发现还是解决不了。最后我用了过滤器,才算终结。
此方法总结如下:在jsp页面中使用<%@ page pageEncoding="GB2312"%> ,这
此方法总结如下:在jsp页面中使用<%@ page pageEncoding="GB2312"%> ,这
在jsp和servlet的开发中,今天自己做的一个小例子中出现了中文乱码问题,用了许多方法,发现还是解决不了。最后我用了过滤器,才算终结。 此方法总结如下:在jsp页面中使用<%@ page pageEncoding="GB2312"%> ,这里的pageEncoding是GB2312,那么我们在过滤器web.xml中所使用的<param-value>GB2312</param-value>也为GB2312。总之一条:就是上述两者一致即可,比如同为UTF-8 我将过滤器的java代码和web.xml的配置写 //--------------java代码部分:CharsetFilter .java package com; 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 CharsetFilter implements Filter { private String charset = "GB2312"; public void destroy() { } public void doFilter(ServletRequest request, ServletResponse response, FilterChain arg2) throws IOException, ServletException { request.setCharacterEncoding(charset); arg2.doFilter(request, response); } public void init(FilterConfig arg0) throws ServletException { charset = arg0.getInitParameter("charset"); System.out.println("字符过滤器开启,当前状态:"+charset); } } //--------------web.xml部分(以下部分可以直接复制粘贴到WEB.XML下) <filter> <filter-name>CharsetFilter</filter-name> <filter-class>com.CharsetFilter</filter-class> <init-param> <param-name>charset</param-name> <param-value>GB2312</param-value> </init-param> </filter> <filter-mapping> <filter-name>CharsetFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> (编辑:聊城站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐