详解JSP中使用过滤器进行内容编码的解决办法
问题
当通过JSP页面,向数据库中插入记录的时候,可能因为JSP页面编码原因,导致插入到数据库中的新纪录出现乱码。因此需要对JSP页面中的内容进行编码操作,从而保证与数据库中的编码一致。
解决方案
使用JSP中过滤器进行处理。处理步骤如下
1.新建一个servlet,使其实现javax.servlet.Filter接口
2.修改Servlet/JSP Mapping URL ,将其改为 /EncodingFilter
3.在EncodingFilter.java 的doFilter方法中实现JSP内容的中文过滤
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filterChain) throws IOException, ServletException {
//过滤中文
request.setCharacterEncoding("utf-8");
filterChain.doFilter(request, response);
}
4 修改XML文件。通过Myeclipse工具默认生成的配置文件不能满足要求,需要做如下修改
如下是Myeclipse自动生成的代码
servlet>
description>chinese encoding/description>
display-name>This is the display name of my J2EE component/display-name>
servlet-name>EncodingFilter/servlet-name>
servlet-class>com.nichao.filter.EncodingFilter/servlet-class>
/servlet>
servlet-mapping>
servlet-name>EncodingFilter/servlet-name>
url-pattern>/EncodingFilter/url-pattern>
/servlet-mapping> -->
```
将其修改为
```
filter>
filter-name>EncodingFilter/filter-name>
filter-class>com.sina.filter.EncodingFilter/filter-class>
/filter>
filter-mapping>
filter-name>EncodingFilter/filter-name>
url-pattern>/*/url-pattern>
/filter-mapping>
5 至此,可以完成对JSP页面内容的中文过滤处理
如有疑问请留言或者到本站社区交流讨论,大家共同进步,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
您可能感兴趣的文章:- 通过过滤器(Filter)解决JSP的Post和Request中文乱码问题
- JSP过滤器Filter配置过滤类型全部汇总
- JSP 开发中过滤器filter设置编码格式的实现方法
- JSP使用Servlet过滤器进行身份验证的方法
- JSP过滤器防止Xss漏洞的实现方法(分享)
- JSP使用过滤器防止SQL注入的简单实现
- jsp实现登录验证的过滤器
- jsp中过滤器选择过滤器的写法详解
- servlet+jsp实现过滤器 防止用户未登录访问
- JSP使用过滤器防止Xss漏洞
- jsp filter 过滤器功能与简单用法示例