现象是:更新操作完成后,本应该是中文的字段都莫名其妙变成了乱码。
比较了两个版本的代码,经过排除后,发现问题出在一个filter中,下面是出问题的代码:
public class MyFilter extends StrutsPrepareAndExecuteFilter { public void doFilter (ServletRequest servletRequest......) { HttpServletRequest request =(HttpServletRequest)servletrequest; // 就是这一行,如果没有这一行,就不会出现乱码的现象 (String) name = request.getParameter("person.name"); ... ... super.doFilter(.....); } } }
解决办法:
web.xml 增加编码过滤器 <filter> <filter-name>encoding</filter-name> <filter-class> com.skysz.framework.filter.encoding.EncodingFilter </filter-class> </filter> EnCodingFilter 实现类 public class EncodingFilter implements Filter { private String encoding; public void init(FilterConfig config) throws ServletException { this.encoding = config.getInitParameter("encoding"); if (StringUtils.isNullOrBlank(this.encoding)) { this.encoding = "UTF-8"; } } public void doFilter(ServletRequest srequest, ServletResponse sresponse, FilterChain chain) throws IOException, ServletException { HttpServletRequest request = (HttpServletRequest) srequest; request.setCharacterEncoding(encoding); chain.doFilter(srequest, sresponse); } public void destroy() { } }
办法来自百度:
相关推荐
Filter中文乱码问题.doc
web.xml配置filter和filtermapping,编写类 读取或写死filter的init-params中的字符编码传入 reqeust中 调用dofilter方法,乱码解决
使用filter过滤器解决中文乱码问题,包含源码,以及filter的配置,希望能帮上大家
配置Filter过滤器处理JSP中文乱码 参考Tomcat服务器目录webapps的examples示例 简单配置步骤: 1.在项目web.xml文件添加过滤器标记<filter>和<filter-mapping>; 2.实现过滤器代码; 3.对Tomcat服务器conf目录里的...
JavaWeb中字节乱码filter解决办法,其中包括tomcat各个版本进行字符设置.
filter是javaWeb中一个十分重要的知识点,可以拦截webApp的所有请求。 使用场景: 1、可以利用filter做到网站自登录。...2、可以利用filter全局修改参数编码,从而解决中文乱码问题(十分重要)。
简单的struts的validator框架代码,以及validation.xml和validator-rules.xml配置 validator对日期的验证 以及乱码问题,采用fliter解决乱码问题
解决中文乱码的Filter类,解决中文乱码的Filter类,解决中文乱码的Filter类
中文乱码解决: String userTmp0 = new String(user.getUsername().getBytes("ISO-8859-1"),"GBK"); 将iso-8859-1 转成gbk编码 上面这种方式是强制转的。。 下面的方式是解决ssh乱码的 struts2中文乱码解决方案 ...
NULL 博文链接:https://hefeidaxia.iteye.com/blog/554594
character-encoding-filter 是 Java Web 乱码过滤器。 web.xml <filter> <filter-name>character-encoding-filter</filter-name> <filter-class>...
在 WEB.XML文件里粘贴一下代码 可以解决乱码问题 <filter> <filter-name>EncodingFilter</filter-name> <filter-class>com.highcom.filter.EncodingFilter</filter-class> <param-name>encoding ...
在传值时会遇到中英文乱码 <filter> <filter-name>GBKEncoding</filter-name> <filter-class>com.sshnews.filter.GBKEncodingFilter</filter-class> </filter> <filter-mapping> <filter-name>GBKEncoding</...
自定义Filter来解决web项目中的乱码问题,包括get请求和post请求,使用包装设计模式。
简单可靠的filter源码和详细配置,轻松解决web中文乱码问题,web开发者必备神器你值得拥有!
用于中文乱码问题,仅限于表单提交,不适于JS提交,JS提交请自己另设response
利用过滤器(filter)解决myeclipse中的乱码问题,包含过滤器源代码,不懂的加Q9402055517。
JSP_利用Filter解决Servlet输出中文乱码的问题.docx
<filter> <filter-name>CharacterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <param-name>encoding <param-value>UTF-8 ...
使用filter解决乱码问题,分为编写doFilter和在web.xml中配置过滤器