POST中文乱码解决方案
来源:互联网 发布:js for循环是什么作用 编辑:程序博客网 时间:2024/06/11 14:01
以前,我都是自己编写一个filter,来实现编码,代码如下:
1 public class CharacterEncodingFilter implements Filter { 2 3 private final static Logger log= LoggerFactory.getLogger(CharacterEncodingFilter.class); 4 5 private String characterEncoding; //编码方式配置在web.xml文件中 6 private boolean enabled; //是否启用此Filter,配置在web.xml中 7 8 @Override 9 public void destroy() {10 characterEncoding = null;11 }12 13 @Override14 public void doFilter(ServletRequest request, ServletResponse response,15 FilterChain chain) throws IOException, ServletException {16 if (enabled || characterEncoding != null) {17 request.setCharacterEncoding(characterEncoding);18 response.setCharacterEncoding(characterEncoding);19 }20 chain.doFilter(request, response);21 }22 23 @Override24 public void init(FilterConfig config) throws ServletException {25 characterEncoding = config.getInitParameter("characterEncoding");26 enabled = "true".equalsIgnoreCase(config.getInitParameter("enabled").trim());27 }28 }
然后自己在web.xml文件中做如下配置
1 <filter> 2 <filter-name>characterEncodingFilter</filter-name> 3 <filter-class>training.model.filter.CharacterEncodingFilter</filter-class> 4 <init-param> 5 <param-name>characterEncoding</param-name> 6 <param-value>UTF-8</param-value> 7 </init-param> 8 <init-param> 9 <param-name>enabled</param-name>10 <param-value>true</param-value>11 </init-param>12 </filter>13 <filter-mapping>14 <filter-name>characterEncodingFilter</filter-name>15 <url-pattern>/*</url-pattern>16 </filter-mapping>
其实我们可以不必这么麻烦,重复造轮子。
spring Web MVC框架提供了org.springframework.web.filter.CharacterEncodingFilter用于解决POST方式造成的中文乱码问题,具体配置如下:
<filter>
<filter-name>CharacterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
按 Ctrl+C 复制代码<filter-name>CharacterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
以后我们项目及所有页面的编码均为UTF-8。
0 0
- POST中文乱码解决方案
- POST中文乱码解决方案
- POST中文乱码解决方案
- jquery post 中文乱码解决方案
- SpringMvc POST中文乱码解决方案
- SpringMVC POST中文乱码解决方案
- Spring MVC POST中文乱码解决方案
- Spring MVC POST中文乱码解决方案
- Spring MVC POST中文乱码解决方案
- springmvc中POST中文乱码解决方案
- Spring MVC POST中文乱码解决方案
- Spring MVC POST中文乱码解决方案
- post及get请求中文乱码解决方案
- SpringMVC POST/GET 中文乱码 解决方案
- Spring MVC POST中文乱码解决方案
- Spring MVC POST中文乱码解决方案
- Spring MVC POST中文乱码解决方案
- Spring MVC POST中文乱码解决方案
- ab压力测试
- Mybatis3.2和Spring3.x整合----Mybtis3.x+Spring3.x
- Fresco图片库的基本使用
- 正则表达式中的?和?:
- shell for循环 和 rsync同步 实例
- POST中文乱码解决方案
- 有关JAVA语言的安卓手机软件开发的分析
- MySQL字段类型详解
- B+树原理及mysql的索引分析
- linux系统间通过cron和ssh实现数据的自动定时传输
- Java常量池相关问题
- 单片机--key
- 软开开发工具总结
- Java Web开发Session超时设置