2012-03-14 70 views
0

是否可以从我的Java代码调用存储过程,然后继续正常流程/执行我的程序,并在后台运行该过程?我可以只触发程序,让它在后台运行(可能需要15-20分钟)?从Java代码触发存储过程并在后台运行

我们可以使用线程来实现它吗?如果是的话,该怎么办?

回答

2

如何:

public class HelloThread extends Thread { 

    public void run() { 
     //call proc here 
    } 

    public static void main(String args[]) { 
     (new HelloThread()).start(); 
    } 

} 

Taken from here.

0

您可以使用Quartz来编程作业执行 - 启动您的存储过程 - 独立于您的程序流程。你应该试试看。

1

主要是你想你的用户界面响应,尽管长时间运行的数据库操作,您可以使用线程通过lCarus

1

基本的建议是,你将需要产生另一个线程来拨打电话。所以我想接下来的问题是如何 - 这取决于你所处的环境。如果你在Java EE环境中,那么可以看看像队列那样运行带外进程。否则,也许看从伊卡洛斯的答案,或者如果您需要执行的线程绑回来之后中,也许看并发utils的 - 概述这里也许:

http://docs.oracle.com/javase/1.5.0/docs/guide/concurrency/overview.html