2012-03-14 54 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