Servlet过滤器Filter是什么

小编给大家分享一下Servlet过滤器Filter是什么,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!

创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于成都网站制作、网站建设、铁西网络推广、成都微信小程序、铁西网络营销、铁西企业策划、铁西品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联公司为所有大学生创业者提供铁西建站搭建服务,24小时服务热线:18980820575,官方网址:www.cdcxhl.com

特点

1)Filter是依赖于Servlet容器,属于Servlet规范的一部分,在Servlet API中定义了三个接口类:Filter, FilterChain, FilterConfig。

2)基本功能是对 调用 Servlet 的过程进行拦截,从而在 Servlet 进行响应处理的前后实现一些特殊的功能。

3)需要在 web.xml 文件中进行注册和设置它所能拦截的资源。

编码

public class UserNoFilter implements Filter { 
    
	private FilterConfig filterConfig; //获取参数配置

	public void init(FilterConfig fConfig) throws ServletException {
		this.filterConfig = fConfig;
	}
	
	/**
	 * 业务逻辑判断
	 */
	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
		
		String initUser = filterConfig.getInitParameter("userNo");
		String userNo = request.getParameter("userNo");//从提交请求获取用户账号
		
		if(!initUser.equals(userNo)){
			request.setAttribute("message", "用户名不正确");
			request.getRequestDispatcher("/index.jsp").forward(request, response);
			return;
		}
		
		chain.doFilter(request, response);
	} 
	
	public void destroy() {
		 
	} 

}

web.xml参数

	
	
		UserNoFilter
		UserNoFilter
		com.demo.filter.UserNoFilter
		
			userNo
			admin
		
	
	
		UserNoFilter
		/hello.jsp 
	

应用

 1)指定编码格式

request.setCharacterEncoding(encoding);
filterChain.doFilter(request, response);

2)用户是否登录、用户能否访问菜单

String userId=(String) session.getAttribute("userId");
if (userId ==null){
}

看完了这篇文章,相信你对Servlet过滤器Filter是什么有了一定的了解,想了解更多相关知识,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


当前标题:Servlet过滤器Filter是什么
本文来源:http://pwwzsj.com/article/jhpops.html