2010-10-17 80 views
0

我將當前的java代碼部署到數據庫,plsql代碼調用它並使用它。 我需要從數據庫中獲取Java代碼並仍然可以使用它。在Oracle數據庫中使用Java

我腦子裏想的選項有:使用PL

  1. Web服務
  2. Java存儲過程
  3. 調用OS命令/ SQL
  4. RMI

什麼是你的建議? 請加上缺點和優點。

感謝, Leeran

回答

0

我當前的Java代碼被部署到 數據庫和PLSQL代碼調用它, 使用它。我需要從數據庫中獲取Java代碼 ,並且仍然可以使用 來使用它。

您能否澄清一下「從數據庫中獲取Java代碼」對您意味着什麼?您是否打算將它打包在JAR中,並將其從數據庫中完全刪除?我不清楚你是否希望將此操作移到中間層,而不是PL/SQL再調用它。

這裏是我的想法對你提出的選擇:

  1. Web服務 - 移動運營從數據庫中,並在中間層。
  2. Java存儲過程 - 我不明白這一點。如果它現在在數據庫中,這是如何改變的?你當然可以有任何客戶端調用PL/SQL,這反過來會調用你的Java代碼。這是在中間層或數據庫服務器上執行該操作更高效的問題。
  3. 使用pl/sql調用操作系統命令 - 我完全不理解這一點。
  4. RMI - 就像Web服務一樣,只是另一個遠程選擇。如果您將操作封裝爲Java POJO服務,則可以按照您希望的方式遠程執行代碼。這意味着只有Java客戶端。 Web服務可以接受來自任何可以說HTTP的客戶端的請求,包括非Java客戶端。
+0

感謝您的回答。我寫了第二條評論,因爲我沒有足夠的空間 – 2010-10-18 08:17:45

+0

現在我的* .sqlj代碼在我的系統中,我想用JPA實體(使用Hibernate)替換它。由於將JPA實體部署到數據庫效率不高,因此已決定不會將Java代碼部署到數據庫,除了一些將調用外部Java代碼的函數。 我與CTO交談過,他提出了我在我的問題中寫的選項。 至於你的問題: 3.你可以使用plsql調用操作系統命令(如「javaw ...「) java存儲過程是我們使用的當前解決方案是正確的,但我希望您的建議是否繼續使用它。 – 2010-10-18 08:18:10

0

這是不完全清楚你想要做什麼或爲什麼。如果您只是想重新使用一些代碼,作爲構建過程的一部分,請從數據庫中提取Java,以便將其編譯幷包含在jar/war文件中。

相關問題