javapost提交乱码求解: 关于javaWeb乱码:通过表单提交数据到action类中,显示乱码,为什么啊???
我在页面设置了编码,在struts2的struts.xml中也设置了编码,项目的编码也是utf-8.,但是post方式提交后就乱码了,而get提交却不会,请问这是为什么?...
我在页面设置了编码,在struts2的struts.xml中也设置了编码,项目的编码也是utf-8.,但是post方式提交后就乱码了,而get提交却不会,请问这是为什么??
展开
展开全部
写一个拦截器类来做request和response的编码过滤:
public class CharsetFilter implements Filter{
private String encoding;
@Override
public void destroy() { }
@Override
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding(encoding);
response.setCharacterEncoding(encoding);
chain.doFilter(request, response);
}
@Override
public void init(FilterConfig filterConfig) throws ServletException {
encoding = filterConfig.getInitParameter("encoding");
}
}
然后在xml文件中配置:
<filter>
<filter-name>CharSetFilter</filter-name>
<filter-class>com.filter.CharsetFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharSetFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-class>节写你的完整过滤器类的路径即可。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询