java EE之分析代码P书132&JEETT文档

一:分析程序清单代码:

//获取当前时间距离 1970-1-1 00:00经过的毫秒数,Filter负责拦截所有的用户请求的过滤范围。
  long before = System.currentTimeMillis();
 //获取当前时间距离 1970-1-1 00:00经过的毫秒数,Filter负责拦截所有的用户请求的过滤范围。     
long after = System.currentTimeMillis();

//将请求强制转换为HttpServletRequest型再赋给HttpServletRequest 请求对象hrequest
 HttpServletRequest hrequest = (HttpServletRequest) request ; 

 //通过getServletPath()函数打印Filter 已经拦截到用户的请求的地址
 System.out.println("Filter 已经拦截到用户的请求的地址: "  + hrequest.getServletPath());  

二:JEETT文档中两段代码的区别,启动代码后的效果

区别;

1、request.startAsyns()导致请求被异步处理;在服务方法结束时,响应不会发送到客户端。

2、acontext.start(new Runnable()  {...})从容器中获取新线程

3、run()内部类的方法的代码在新线程中执行。内部类可以访问异步上下文以从请求读取参数并写入响应。调用complete(),异步上下文的方法将提交响应并将其发送给客户端。

效果:

使用异步处理后,在负载的情况下响应速度变快,服务器吞吐量变大。

参考:http://www.cnblogs.com/real-psyyyy1015/p/8641580.html

原文地址:https://www.cnblogs.com/cowryw/p/8692352.html