JAVAEE第三周

一、代码分析
@WebFilter(filterName="log" ,urlPatterns={"/*"})
//创建一个LOgFilter类
public class LogFilter implements Filter { //FilterConfig可用于访问Filter的配置信息 private FilterConfig config; //实现初始化方法 public void init(FilterConfig config) { this.config = config; } //实现销毁方法 public void destroy() { this.config = null; } //执行过滤的核心方法 public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException,ServletException//创建一个doFilter 类,request参数是用于获取客户请求数据,response参数是用于发送响应数据,chain参数是过滤调用链。 { //---------下面代码用于对用户请求执行预处理--------- //获取ServletContext对象,用于记录日志 ServletContext context = this.config.getServletContext(); long before = System.currentTimeMillis();//是获得当前时间距离1970-1-1 00:00:00经过的毫秒数 System.out.println("开始过滤..."); //将请求转换成HttpServletRequest请求 HttpServletRequest hrequest = (HttpServletRequest)request;//把request强制类型转换为HttpServletRequest对象 //输出提示信息 System.out.println("Filter已经截获到用户的请求的地址: " + hrequest.getServletPath());//hrequest.getServletPath()是返回的是项目名到当前jsp文件的路径(意思就是在这个项目首页到文件的路径) //Filter只是链式处理,请求依然放行到目的地址 chain.doFilter(request, response);//调用下一个filter。 //---------下面代码用于对服务器响应执行后处理--------- long after = System.currentTimeMillis();//是获得当前时间距离1970-1-1 00:00:00经过的毫秒数 //输出提示信息 System.out.println("过滤结束"); //输出提示信息 System.out.println("请求被定位到" + hrequest.getRequestURI() + " 所花的时间为: " + (after - before));//hrequest.getRequestURI()是返回的整个URL的路径请求(意思就是返回的浏览器地址栏的整个地址) } }

二、session

概念;在Web中session是用户在浏览某个网站时,从进入网站到关闭网站所用的时间,也就是用户浏览这个网站所花费的时间。

原理:1、当一个session第一次被启用时,一个唯一标识被存储于本地的cookie中

2、先使用session_start()函数,PHP从session仓库中加载已经存储的session变量

3、当执行PHP脚本时,通过session_register()注册session变量

4、当执行PHP脚本结束,未被销毁的session变量会被自动保存在本地一定路径下的session库中,这个路径可以通过PHP.in文件中的session.save_path指定,下次浏览网页时,可以加载使用。

三、用法

posted on 2018-03-23 13:47  CCY0  阅读(99)  评论(0编辑  收藏  举报

导航