2016-04-20 97 views
0

我在JRuby項目中使用了一些Java代碼來連接到MQ。我是Java新手,不知道如何在JRuby中使用以下Java語句。將Java代碼轉換爲JRuby

QueueConnection con = factory.createQueueConnection(); 
QueueSession session = con.createQueueSession(false, session.AUTO_ACKNOWLEDGE); 
session.start(); 

凡QueueConnection和QueueSession的是進口頂部

java_import javax.jms.QueueConnection 
java_import javax.jms.QueueSession 

感謝

回答

1

在Java的Java類:

  • 變量必須聲明它們的類型。 QueueConnection con = ...表示變量con的類型爲QueueConnection。類型也存在於Ruby中,但它們並不明確,因此您只需說con = ...
  • 陳述必須以分號結束。它們在Ruby中不是必需的。

此外,您顯示的代碼並不完全正確,因爲session變量在聲明前用於session.AUTO_ACKNOWLEDGEAUTO_ACKNOWLEDGEQueueSession類的靜態字段,因此代碼應爲QueueSession.AUTO_ACKNOWLEDGE。在JRuby中,可以使用::語法而不是.訪問靜態字段。

因此我猜想,你的片斷相當於JRuby的代碼是這樣的:

con = factory.createQueueConnection() 
session = con.createQueueSession(false, QueueSession::AUTO_ACKNOWLEDGE) 
session.start()