`
tanglong8848
  • 浏览: 71151 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

java 调用异步方法

 
阅读更多
某些时候我们需要执行一个方法立即返回一个处理结果,但仍需要另一个方法去实现某些功能(如调用存储过程)实现异步处理。下面我们采用新开一个线程的方式处理:
          
        /**
	 * 手动执行
	 */
	public void doJob() {
		Map<String, Object> jsonBean = new LinkedHashMap<String, Object>();
		if (!UtilTools.isEmpty(token)&& token.equals("4297f44b13955235245b2497399d7a93")) {
                       //开启新的线程
                       try {
				ExecutorService cachedThreadPool = Executors.newCachedThreadPool();
				cachedThreadPool.execute(new Runnable() {
					 
				    public void run() {
				    	
						// do task
						todoUsp();
				    }
				});
				cachedThreadPool.shutdown();
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}

			jsonBean.put("success", "true");
		} else {
			jsonBean.put("success", "false");
		}


		this.renderJson(UtilTools.encodeObject2Json(jsonBean));
	}
        
        /*需要完成功能的方法*/
        public void toDoUsp(){

            //调用存储过程
            ...
        }


第二种方式采用Ajax异步方法请求,前台页面处理,执行后等待第一个结果返回再继续调用第二个方法。


分享到:
评论

相关推荐

    Java异步调用转同步方法实例详解

    Java异步调用转同步方法实例详解是指在Java中将异步调用转换为同步调用的技术,主要用于解决异步调用过程中的阻塞问题。异步调用是一种非阻塞的调用方式,调用方在调用过程中,不直接等待返回结果,而是执行其他任务...

    Java实现异步调用

    在Java编程中,异步调用是一种非常重要的技术,它允许程序在等待某个耗时操作完成的同时,继续执行其他任务,从而提高系统整体的响应性和效率。本篇将深入探讨如何在Java中实现异步调用,以及相关的核心概念和技术。...

    javaHttp异步请求

    9. **取消请求**: 如果不再需要某个异步请求的结果,可以调用`Future&lt;HttpResponse&gt;`的`cancel()`方法来取消请求。 10. **响应处理**: 在`completed()`方法中,可以获取到`HttpResponse`对象,并从中读取状态码、头...

    java实现HttpClient异步请求资源的方法

    在`execute`方法调用后,HttpClient并不会立即等待响应,而是继续执行下一个请求,这就是异步请求的核心所在。当所有请求完成,`latch.await()`会阻塞主线程,直到计数器归零,即所有请求已完成,然后关闭HttpClient...

    Java多线程实现异步调用实例

    在Java编程中,多线程和异步调用是提高应用程序性能和响应能力的重要手段。在本实例中,我们将深入探讨如何使用Java实现多线程以实现异步调用,并理解其背后的机制。 首先,多线程允许一个程序同时执行多个任务。在...

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

    - **客户端使用**:客户端可以通过生成的Stub或XML请求直接调用异步服务,服务端返回一个Callback对象,客户端可以注册监听器以接收服务完成的通知。 4. **具体实现步骤** - **创建服务**:编写服务接口和实现,...

    Java调用OCR进行图片识别

    Java调用OCR进行图片识别 Java调用OCR进行图片识别是指使用Java语言通过Tesseract-OCR对图片进行识别的技术。下面是相关知识点的详细解释: 一、Tesseract-OCR简介 Tesseract-OCR是一个开源的OCR(Optical ...

    dwr dwr项目 js 调用 java 后台 方法 js调用java后台方法 后台方法 异步

    DWR默认采用异步模式,这意味着JavaScript调用Java方法不会阻塞浏览器,而是立即返回,并在后台处理请求。当请求完成时,回调函数会被调用。 7. **安全性** DWR提供了多种安全措施,如CSRF保护、IP白名单等,以...

    java代码实现异步调用代码

    在Java编程中,异步调用是一种非常重要的技术,它允许程序在等待某个耗时操作完成时继续执行其他任务,从而提高系统效率和响应性。本文将深入探讨如何使用Java来实现异步调用,以及它在后端开发中的应用。 1. **...

    java调用api的方法

    Java调用RESTful API通常通过发送HTTP GET、POST、PUT、DELETE等方法实现。例如,使用HttpURLConnection,你可以构建URL、设置请求方法、添加请求头和请求体,然后接收响应。对于复杂的JSON数据操作,可以使用Gson或...

    java调用C++ webservice

    本话题主要探讨如何使用Java调用由C++实现的Web服务(Webservice)。在给出的描述中,提到了通过WSDL(Web Services Description Language)文件来实现这一目标。以下是关于这个主题的详细知识点: 1. **Web服务...

    Java代码调用HTML5中的JS函数算法

    "java调用js方法.doc"很可能是详细描述如何从Java调用JS函数的步骤和示例。 在实际应用中,Java代码可能会通过Ajax发送一个请求到服务器,服务器解析请求后调用对应的JS函数,例如在"des.js"中执行解密操作,然后将...

    【Java设计模式-源码】异步方法调用模式:通过异步编程提升性能

    在 Java 开发中,异步方法调用模式是一种重要的并发编程模式,它可以提高应用程序的性能、可扩展性和响应能力。本文将详细介绍异步方法调用模式的意图、解释、编程示例、适用场景以及实际应用。同时,还将提供示例...

    Java接口异步调用

    Java接口异步调用是指在Java编程中,使用异步调用方式来调用接口的方法。异步调用是指在调用方不需要等待被调用方完成操作,而是直接继续执行其他操作的调用方式。异步调用方式可以大大提高程序的性能和响应速度。 ...

    java调用第三方的短信接口

    以上就是关于“Java调用第三方短信接口”的主要知识点。在实践中,还需要结合具体的第三方平台API文档来编写代码,确保符合其规范和要求。文件"SMSSend"可能是示例代码或者相关文档,对于具体实现细节,建议参照该...

    java调用ffmpeg详细步骤

    使用Java语言调用终端开启关闭Nginx服务器,然后执行ffmpeg命令,开启转流推流。以及其它指令,来学习吧

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

    然后,在`doGet`或`doPost`等方法中,可以调用`HttpServletRequest`的`startAsync()`方法来启动异步上下文。接下来,你可以创建一个`AsyncContext`对象,并使用`AsyncContext.start()`来启动一个新线程,执行耗时的...

    Java异步编程框架之Promise介绍

    Java中使用Future来处理异步操作,但它需要调用者主动轮询检查任务是否完成,或者使用get方法进行阻塞直到任务完成。而Promise是对Future的进一步抽象,它提供了一种更加灵活的链式调用机制,开发者可以方便地实现...

    调用阿里云API,java(异步实现)DDNS

    用java代码实现了UPDATE,这里是java源代码。‘增删改查’记录,‘改查’实现了目前增有得完善代码,删没删除需求就没添加删的代码。源代码,需要在param.properties文件中填写对应KEYValue值。同时也可以参考我的...

    java异步通信示例

    异步Socket在Java NIO中通过`AsynchronousSocketChannel`类实现,它提供了异步版本的读写方法,如`AsynchronousSocketChannel.read()`和`AsynchronousSocketChannel.write()`。这些方法可以配合Future和...

Global site tag (gtag.js) - Google Analytics