Oracle數(shù)據(jù)庫中Java的存儲過程的代碼摘錄
Oracle數(shù)據(jù)庫中Java的存儲過程可以利用JMSL來調(diào)用AQ的實際操作。我們可以利用以下經(jīng)常使用的4個步驟,來實現(xiàn)這一模式,創(chuàng)建并啟動JMS Queue(為此,可以將以下一些操作嵌入SQL腳本內(nèi)):
- execute dbms_aqadm.create_queue_table(queue_table =>
''queue1'', queue_payload_type => ''SYS.AQ$_JMS_TEXT_MESSAGE'',
comment => ''a test queue'', multiple_consumers => false,
compatible => ''8.1.0'');
execute dbms_aqadm.create_queue
( queue_name => ''queue1'', queue_table => ''queue1'' );
execute dbms_aqadm.start_queue(queue_name => ''queue1'');
創(chuàng)建Java存儲過程(代碼摘錄如下):
- public static void runTest(String msgBody)
{ try { // get database connection ora_drv = new OracleDriver();
db_conn = ora_drv.defaultConnection();
// setup sender (cf online code sample) ..
// create message s_msg = s_session.createTextMessage(msgBody);
// send message sender.send(s_msg); s_session.commit();
// receive message r_msg = (TextMessage) receiver.receive();
r_session.commit();
// output message text String body = r_msg.getText();
System.out.println("message was ''"+body+"''"); ..} }
創(chuàng)建Call Spec:
- create or replace procedure jmsproc
(t1 IN VARCHAR) as language java name
''jmsSample.main (java.lang.String[])''; /
調(diào)用存儲過程:
- call jmsproc(''hello'');
Oracle數(shù)據(jù)庫輔助的Web發(fā)布(緩沖失效)
各應(yīng)用程序結(jié)構(gòu)必須面對的一個共同問題是如果可靠地將數(shù)據(jù)庫信息進行緩存,以提高整個系統(tǒng)的性能。JCACHE是一種即將公布的標(biāo)準(zhǔn)規(guī)范(JSR 107),它可以解決這一問題。它說明了一種對Java對象臨時在內(nèi)存中進行緩存的方法,包括對象的創(chuàng)建、共享訪問、假脫機(spooling)、失效、各JVM的一致性等。
它可被用于緩存JSP內(nèi)最經(jīng)常讀取的數(shù)據(jù),如產(chǎn)品目錄和價格列表。利用JCACHE,多數(shù)查詢的反應(yīng)時間會因為有緩存的數(shù)據(jù)而加快(內(nèi)部測試表明反應(yīng)時間大約快15倍)。
為了跟蹤原始數(shù)據(jù)的所有變化,并刷新已緩存的數(shù)據(jù),Java存儲過程會作為一個觸發(fā)器被附加在一個表上。這個表的任何變化都會自動調(diào)用該存儲過程,后者再調(diào)出一個已定義的JSP使JCACHE對象失效,該對象將其狀態(tài)映射到該Oracle數(shù)據(jù)庫表。
在失效時,緊跟其后的查詢將強制緩存器根據(jù)數(shù)據(jù)庫的數(shù)據(jù)進行更新。 下面的步驟 閱讀關(guān)于Java存儲過程的更多信息本文摘自白皮書"釋放Java存儲過程的能量(Unleash the Power of Java Stored Procedures)",可以在以下位置找到該白皮書:
- otn.oracle.com/tech/java/java_db/pdf/
- OW_30820_JAVA_STORED_PROC_paper.PDF
Oracle9i數(shù)據(jù)庫第2版中的新PL/SQL特性
- otn.oracle.com/tech/pl_sql/pdf/
- Paper_30720_Doc.pdf
- Resolver Spec
- otn.oracle.com/docs/products/oracle9i/
- doc_library/release2/java.920/a96659.pdf
- OracleJVM and Java 2 Security
- otn.oracle.com/docs/products/oracle9i/
- doc_library/release2/java.920/a96656.pdf
上述的相關(guān)內(nèi)容就是對Oracle數(shù)據(jù)庫中Java的存儲過程可以利用JMSL來調(diào)用AQ的實際操作的描述,希望會給你帶來一些幫助在此方面。
【編輯推薦】