字符过滤器+在web.xml中的配置
发布日期:2021-07-01 00:10:50
浏览次数:2
分类:技术文章
本文共 1951 字,大约阅读时间需要 6 分钟。
import javax.servlet.*;
import java.io.IOException; /** * 字符过滤器 * * @author 大有软件 */ public class SetCharacterEncodingFilter implements Filter { protected String encoding = "GBK"; protected FilterConfig filterConfig = null; protected boolean ignore = true; public void init(FilterConfig filterConfig) throws ServletException { this.filterConfig = filterConfig; this.encoding = filterConfig.getInitParameter("encoding"); String value = filterConfig.getInitParameter("ignore"); if (value == null) this.ignore = true; else if (value.equalsIgnoreCase("true")) this.ignore = true; else if (value.equalsIgnoreCase("yes")) this.ignore = true; else this.ignore = false; } public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { // Conditionally select and set the character encoding to be used if (ignore || (request.getCharacterEncoding() == null)) { String encoding = selectEncoding(request); if (encoding != null) { request.setCharacterEncoding(encoding); } } // Pass control on to the next filter chain.doFilter(request, response); } protected String selectEncoding(ServletRequest request) { return (this.encoding); } public void destroy() { this.encoding = null; this.filterConfig = null; } }注意问题:粗斜体的参数部分必须和过滤器中的属性要一样,否则过滤器可能不起作用。 <!-- 字符过滤器 --> <filter> <filter-name>encodeFilter</filter-name> <filter-class> com.dayou.util.SetCharacterEncodingFilter </filter-class> <init-param> <param-name>encoding</param-name> <param-value>GBK</param-value> </init-param> <init-param> <param-name>ignore</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodeFilter</filter-name> <url-pattern>*.jsp</url-pattern> </filter-mapping> <filter-mapping> <filter-name>encodeFilter</filter-name> <url-pattern>*.do</url-pattern> </filter-mapping> <filter-mapping> <filter-name>encodeFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>转载地址:https://lztom.blog.csdn.net/article/details/82782384 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
网站不错 人气很旺了 加油
[***.192.178.218]2024年04月13日 04时56分34秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
亚马逊数据库泄露47GB医疗数据 波及了15万患者
2019-05-02
关系型数据库问世前,DBA们都是怎么做数据存储管理的?
2019-05-02
中泰证券钢铁行业数据库
2019-05-02
Oracle 数据库常用操作语句大全:13 篇值得回顾的技术热文
2019-05-02
爱可生云数据库
2019-05-02
[解密] DNA存储技术究竟牛在哪里?
2019-05-02
谨赠20篇技术热文营造一个不一样的节日气氛!
2019-05-02
[赠书] 解析VMware生态、解决方案和认证体系
2019-05-02
[干货] 数据泄露事件背后,众多的企业级加密技术,谁能堪负重任?
2019-05-02
[漫画] 程序员的鄙视链,你有没有被鄙视?
2019-05-02
[重磅] HPC应用对GPU计算支持现状解析
2019-05-02
[解读] 同是NAND Flash闪存(SSD)技术,MLC和SLC差距为何如此之大?
2019-05-02
[揭榜] 2017年中国上市公司市值500强榜单
2019-05-02
[思考] 程序员能靠纯技术渡过中年危机吗?
2019-05-02
Grafana和Kibana是写给程序员最美的情诗!
2019-05-02
作为软件工程师,该如何处理“前任”留下的代码?
2019-05-02
PureStorege对EMC发布PowerMAX的点评要点
2019-05-02
详解FC交换机基础知识
2019-05-02
HPC高性能计算知识: 深度解析Lustre体系结构
2019-05-02
微软计划高额收购GitHub,可否重塑其开源形象?
2019-05-02