`
chen422520
  • 浏览: 27343 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

请您先登录,才能继续操作

java servlet 3.0 第三节(异步调用)示例

 
阅读更多

1   

    通过 request 对象取得 AsyncContext 

    这个是servlet和线程共享 的上下文

 

       AsyncContext asyncContext=request.startAsync();

 

2 新增 对应的线程处理类

 

 

public class MyTest implements Runnable
{
	AsyncContext asyncContext;

	public MyTest(AsyncContext asyncContext){
		this.asyncContext=asyncContext;
	}
	
	
	@Override
	public void run()
	{
		
		 try
		{
                  //通过共有上下文取得 输出对象流
                   PrintWriter writer= asyncContext.getResponse().getWriter();
			
			writer.write(" abcdef");
			
			writer.flush();
			
			Thread.sleep(15000);
			
			writer.write("ghimlno");
			
			writer.flush();
                      //调用次方法,通知线程处理结束 
                       asyncContext.complete();
		}catch (IOException e)
		{
			e.printStackTrace();
		}catch (InterruptedException e)
		{
			e.printStackTrace();
		}finally{
			
		}

	}

}
 

 

3 在 serlvet 中启动自建的线程类

 

              
                response.getWriter().write("asdfasdf");



               AsyncContext asyncContext=request.startAsync();

		new Thread(new MyTest(asyncContext)).start();
 

 

分享到:
评论
1 楼 string2020 2014-05-03  
楼主,能否写一个例子说说:
AsyncContext 类的 dispatch、dispatch(String path)
两个方法是干啥的

谢谢。

相关推荐

    servlet3.0-demo

    Servlet 3.0是Java EE 6规范的一部分,它带来了许多增强的功能,使得Web应用程序的开发更为便捷和灵活。在这个名为“servlet3.0-demo”的项目中,我们重点探讨的是如何利用Servlet 3.0的新特性进行文件上传操作,...

    servlet3.0与mybatis整合的示例

    2. 异步处理:Servlet3.0支持异步处理请求,这意味着Servlet可以在不阻塞线程的情况下执行长时间运行的任务,提高了服务器性能。 3. 嵌入式容器:Servlet3.0允许在没有web服务器的情况下运行应用,例如使用Jetty或...

    Servlet3.0 异步处理 页面推送 Comet 实例

    Servlet3.0是Java EE平台中的一个重要更新,它引入了许多新特性,其中一项重大改进就是对异步处理的支持。这项特性使得服务器可以处理长时间运行的任务,而不会阻塞其他请求,提高了系统的响应能力和效率。本实例...

    servlet3.0 jar包和doc

    Servlet3.0是Java Web开发中的一个重要里程碑,它在Servlet API上引入了多项重大改进,极大地提升了开发效率和灵活性。这个压缩包包含了servlet3.0的jar包和对应的doc文档,非常适合开发者学习和使用。 首先,我们...

    servlet 3.0 异步 推送 聊天室

    Servlet 3.0引入了一种全新的特性,即异步处理能力,这极大地提高了Web应用程序的性能和响应性,尤其是在处理长时间运行的任务时。在传统的Servlet中,请求处理线程会一直占用,直到整个请求生命周期结束,这可能...

    java servlet 3 异步调用 异步处理 注册监听

    在Java的Servlet 3.0版本中,引入了一项重要的特性——异步处理(Asynchronous Processing),这极大地提升了Web应用程序的性能和响应性。本文将深入探讨这一特性,以及如何利用它来实现异步调用,并注册监听器来...

    javax.servlet-3.0

    【标签】"servlet-3.0" 指的是Servlet API的第三版,该版本包含了多项增强功能,例如非阻塞I/O、异步处理、注解配置、过滤器链的动态管理等。 【文件名称列表】 1. javax.servlet-3.0.jar:这是一个包含Servlet 3.0...

    深入 Java Servlet 网络编程

    5.3 AsyncContext 异步处理:Java Servlet 3.0引入了异步处理,允许Servlet在不阻塞线程的情况下处理请求。 六、相关技术比较 6.1 Java Servlet 与 JSP:JSP(JavaServer Pages)是视图层技术,它将HTML代码与Java...

    Java™ Servlet 规范.

    其他的 Java 平台规范 .......................................................................................................................................3 其他重要参考资料 ............................

    浅谈servlet3异步原理与实践

    Servlet异步处理流程图.png 接收到request请求之后,由tomcat工作线程从HttpServletRequest中获得一个异步上下文AsyncContext对象,然后由tomcat工作线程把AsyncContext对象传递给业务处理线程,同时tomcat工作线程...

    JavaServlet帮助文档

    7. **异步处理**:从Servlet 3.0版本开始,引入了异步处理能力,允许Servlet在`service()`方法内部启动新的线程来处理请求,而不会阻塞主线程。这提高了应用的并发性能。 8. **分布式Web应用**:Servlet API也提供...

    异步Web方法调用例子-Java源码

    在"AXIS2-googlespellcheck"这个例子中,可能包含了使用AXIS2实现Google Spell Check服务的异步调用示例。 - **AXIS2的异步调用机制**:AXIS2使用MessageReceiver接口处理消息,对于异步调用,可以实现...

    Java Servlet开发与实例

    自Servlet 3.0开始,引入了一些新特性,如注解配置、异步处理、生命周期回调方法等,使得Servlet的使用更加灵活便捷。 总结,Java Servlet是构建Web应用程序的强大工具,通过深入学习和实践,你可以掌握服务器端...

    深入Java Servlet网络编程

    - **异步处理**:Java Servlet 3.0引入了异步处理,可以提高并发性能。 - **缓存策略**:合理利用HTTP缓存机制,减少服务器负载。 7. **实际应用场景**: - **RESTful API**:Servlet可以构建RESTful服务,提供...

    java servlet 帮助 chm

    本资源“java servlet 帮助 chm”是一个关于Servlet技术的完整指南,通常包含API参考、教程和示例代码,是学习和深入理解Servlet不可或缺的资料。 Servlet API是Java EE(现在称为Jakarta EE)的核心组成部分,它...

    《IT学习资料2》-Java web开发async机制学习.zip

    `servlet-async-io`可能进一步讲解了Servlet异步I/O,包括使用`AsyncContext`与外部资源进行通信,如数据库查询或远程服务调用。这种方式可以显著减少线程池中的线程占用,从而提高服务器的吞吐量。 最后,`tomcat-...

    深入Java Servlet 网络编程阅读器Part3

    - 自动注册Servlet和Filter,异步处理,注解配置等是Servlet 3.0引入的新特性,简化了开发流程,提高了灵活性。 综上所述,"深入Java Servlet 网络编程阅读器Part3"可能涵盖了这些主题的深度讲解,帮助开发者深入...

    Jquery+ajax+JAVA(servlet)实现下拉菜单异步取值_.docx

    本示例介绍了一个使用jQuery、Ajax和Java Servlet实现的下拉菜单动态加载数据的案例。 首先,让我们从JSP(JavaServer Pages)代码开始。在JSP中,我们设置了页面的基础路径,引入了jQuery库,并定义了一个...

    servlet.rar

    在提供的文件"Servlet3_01"和"Servlet3_02"中,可能会涵盖这些内容的示例代码和详细讲解。 1. 注解配置:可以直接在Servlet类上使用`@WebServlet`注解进行配置,无需`web.xml`。 ```java @WebServlet("/myservice")...

Global site tag (gtag.js) - Google Analytics