简单的Filter
来源:互联网 发布:电子病历软件免费 编辑:程序博客网 时间:2024/05/29 03:19
Filter 是加强版的Servelt,就像人一样,一开始都是单独的个体,后来为了自己,做医生,警察等不同的职业
java 也是差不多的吧
开始servlet ,输出不好使,于是有了jsp作为输出
需要提前判断用户是否请求合理,于是有了Filter
Filter 有这几种方法
init() 初始化
doFilter()操作
destroy()毁灭
需要注意得是
doFilter() 中有个
chain.doFilter()
之前是对客户端执行
之后是对服务器操作的
Filter是在servelt 处理前,做处理,别称为拦截器
package ff;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebFilter;
import javax.servlet.http.HttpServletRequest;
/**
* Servlet Filter implementation class LogFilter
*/
@WebFilter(filterName = "log", urlPatterns = { "/*" })//filterName 名字 urlPatterns 拦截范围
public class LogFilter implements Filter {
private FilterConfig config; //自己添加的属性,用于获取其他数据
/**
* Default constructor.
*/
public LogFilter() {
// TODO Auto-generated constructor stub
}
/**
* @see Filter#destroy()
*/
public void destroy() {
// TODO Auto-generated method stub
this.config=null;
}
/**
* @see Filter#doFilter(ServletRequest, ServletResponse, FilterChain)
*/
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
// TODO Auto-generated method stub
// place your code here
// pass the request along the filter chain
ServletContext context=this.config.getServletContext(); //可用于纪录日子
HttpServletRequest hrequest=(HttpServletRequest)request; //转换为HttpServeltRequest 获取路径
System.out.println(hrequest.getServletPath());
chain.doFilter(request, response);
System.out.println("ok");
System.out.println(hrequest.getRequestURI());//将数据发送的请求的页面 如果要判断是否权限合理,可以用sesion 如果不合理,重定向,后名的chain.filter()就省去了
}
/**
* @see Filter#init(FilterConfig)
*/
public void init(FilterConfig fConfig) throws ServletException {
// TODO Auto-generated method stub
this.config=fConfig;
}
}
之前使用注释里做的
其下面试试web.xml 怎么配置
为了方便,吧@webFilter 注释掉,直接使用这个类
web.xml 添加
<filter>
<filter-name>log</filter-name>
<filter-class>ff.LogFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>log</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
- filter的简单认识
- 简单的Filter实现
- 简单的Filter
- 过滤器Filter的简单应用
- Filter简单过滤器的实现
- 最简单的source filter
- Filter+Listener的简单使用
- Filter过滤器的简单使用
- Filter二(利用Filter实现简单的登录验证)
- 一个简单的tcp filter的例子
- JSP中Filter的简单应用
- 基于Filter的简单登录过滤器
- 基于 Filter 的简单缓存方案
- java中使用简单的filter
- JSP Filter过滤器的简单实例.
- Struts2一个简单的Filter实现
- 一个简单的Filter:安全级别与过滤器
- filter拦截器的简单使用
- 搭建Spark所遇过的坑
- XAMPP下使用MySQL教程
- BZOJ1511 [POI2006]OKR-Periods of Words
- [题解]bzoj1070(SCOI2007)修车
- react+redux框架配置从无到有直到正常运行全流程(下)
- 简单的Filter
- LinuxBASE2--Makefile&GDB
- CSDN-markdown
- Linux下which、whereis、locate、find命令的区别
- Linux性能评测工具之一:gprof篇
- 语音识别 Embedded Training
- dp
- 内核模块参数
- Vmvare 宿主机与虚拟系统断网组建局域网