JMS+Oracle Advanced Queue(AQ)Ó÷¨Êµ¼ù
×÷Õß:Ñî´óÓÑ,Óà´¨ ²âÊÔÔ±:Íõ½¡
¿ª·¢¹¤¾ß:Oracle Jdeveloper 10131
ÈíÓ²¼þ»·¾³:
²Ù×÷ϵͳlinux redhat 3.0 Êý¾Ý¿âΪOracle 10G 10.0.2
Ó¦Ó÷þÎñÆ÷ΪSOA Application Server 10131
¿ª·¢ÓïÑÔ:java
¹ØÓÚÌåϵ½á¹¹,˵¶àÁËÒ²ÈÃÈ˾õµÃÔÎ.ÎÒÖ±½ÓʾÀýÒ»¸ö×ö·¨,ÖÁÓÚÀí½â,¾ÍÂýÂý¿´Êé°É!
²½Öè:
1.
´´½¨Oracle AQ
Ê×ÏÈÒÔ³¬¼¶Óû§µÇ½Êý¾Ý¿â,Ð޸ıØÒª²ÎÊý,½¨Á¢AQÓû§,²¢¸øÈ¨ÏÞ.ÎÒÊÇʹÓÃsqlplus
Conn sys/******@SID as sysdba
Alter system set AQ_TM_PROCESSES=6
Alter system set JOB_QUEUE_PROCESSES=10
Create user aq identified by aq1234 default tablespace users
temporary tablespace temp quota unlimited on users;
Grant connect,resource to aq;
Grant aq_administrator_role to aq;
Grant execute on dbms_aqadm to aq;
Grant execute on dbms_aq to aq;
Grant create any table to aq;
Grant enqueue any queue,dequeue any queue to aq;
ÔÚÕâ²åÒ»¾ä,ÕâÑù´´½¨Ö»ÊÇΪÁ˱ãÓÚ²Ù×÷,´ó¼ÒÔÚÍâÃæÊ¹ÓÃÓ¦¸ÃÔÙ´´½¨Óû§,Ö»ÐèÒªÊÚÓèconnect,resource,²Ù×÷dbms_aqadmºÍ
dbms_aqµÄȨÏÞ¾Í×ã¹»ÁË.Èç¹ûÄãÏëÓÃÒ»¸öÓû§²Ù×÷ÁíÍâÒ»¸öÓû§µÄqueue(±ÈÈçaq1²Ù×÷aq´´½¨µÄqueue),ÄÇôֻÐèÒªÖ´ÐÐÏÂÃæµÄÃüÁî:
Conn aq/aq1234@sid
Execute
dbms_aqadm.grant_queue_privilege(‘enqueue’,’aq_queue’,’aq1’,false);
½âÊÍ:µÚÒ»¸ö²ÎÊýÊÇȨÏÞ,¿ÉÒÔÓÐÈý¸öÖµ,enqueue,dequeue,all(all¾ÍÊÇÇ°ÃæÁ½¸ö¶¼ÓÐ).µÚ¶þ¸ö²ÎÊýÊÇqueueµÄÃû×Ö,µÚÈý¸ö²ÎÊýµÄ°ÑȨÏÞ¸øÄĸöÈË,µÚËĸöµÄÒâ˼,Ôݲ»Ã÷°×,¾Í²»Ëµ.
ÏÂÃæ¾ÍÊǽ¨Á¢queue
tablesºÍqueueµÄʱ¼äÁË.ÓÃoemÀ´´´½¨ÊÇ×î¼òµ¥µÄ,´ó¼Ò×Ô¼º¿´Ò»ÏÂ,ÎÒ°ÑÓÃÃüÁî´´½¨µÄ¹ý³Ì˵ÏÂ:
Conn aq/aq1234@sid
--create a queue table.
BEGIN
dbms_aqadm.create_queue_table(
queue_table=>'JMSTEST_QT',
queue_payload_type=>'SYS.AQ$_JMS
_MESSAGE',
multiple_consumers =>
false,
comment => 'Queue Table For Resource Provider');
END;
/
--create a queue
BEGIN &
Ïà¹ØÎĵµ£º
Oracle »ñÈ¡µ±Ç°ÈÕÆÚ¼°ÈÕÆÚ¸ñʽ
»ñȡϵͳÈÕÆÚ£º SYSDATE()
¸ñʽ»¯ÈÕÆÚ£º TO_CHAR(SYSDATE(),'YY/MM/DD HH24:MI:SS)
» ......
ÎÊÌâÒ»£ºÈç±£¼ÓÔØJDBCÇý¶¯³ÌÐò£º
¡¡¡¡Õý³£ÎÒÃǼÓÔØÇý¶¯³ÌÐòÓÐÈý¸ö;¾¶£º
¡¡¡¡1£©Class.forName(String)ÕâÏëµ±ÓÚclassLoaderÒ»¸öStringÖ¸¶¨µÄÀ࣬ÔÚ×°ÔØÊ±°Ñ¸ÃÇý¶¯³ÌÐòµÄ¾²Ì¬ÄÚÈݶ¼³õʼ»¯£¬ÆäʵÕâʱÇý¶¯³ÌÐòÀàµ÷ÓÃÁËDriverManager.registerDriver(driver)·½·¨
¡¡¡¡2£©Ê¹ÓÃϵͳÊôÐÔ£ºSystem.getProperty().load(new Fil ......
ϵͳ»¹Ô¶Î
½öΪϵͳ±í¿Õ¼äÖеĶÔÏó±ä»¯ËùÓá£ËüÊÇÔÚÊý¾Ý¿â´´½¨Ê±ÔÚϵͳ±í¿Õ¼äÖд´½¨µÄ¡£ÏµÍ³»¹Ô¶Î¼È¿ÉÒÔ´æÔÚ²¢¹¤×÷ÔÚ×Ô¶¯Ä£Ê½Ï£¬Ò²¿ÉÒÔ´æÔÚ²¢¹¤×÷ÔÚÊÖ¶¯Ä£Ê½Ï¡£
·Çϵͳ»¹Ô¶Î
ΪÆäËû±í¿Õ¼äÖжÔÏóµÄ±ä»¯ËùʹÓᣵ±Ò»¸öÊý¾Ý¿â¾ßÓжà¸ö±í¿Õ¼äʱ¾ÍÐèÒªÖÁÉÙÒ»¸öÊÖ¶¯µÄ·Çϵͳ»¹Ô¶Î»òÒ»¸ö×Ô¶¯¹ÜÀíµÄ»¹Ô±í¿Õ¼ä¡£
×Ô¶¯Ä£Ê½ ......
ÎÒÏÈÅ×שÒýÓñ:
1. ¿ª·¢ÐÔ: SQLSERVER²»ÄÜ,ORACLEÄÜ×°ÔÚUNIXÉÏ
2. ·ÖÇø±í: SQLSERVER²»Ä ......
´ÓOracle 9iR2 ¿ªÊ¼,ORACLEÌṩÁ˱í/±í¿Õ¼äѹËõ¼¼Êõ,ÒÔ¼õÉÙ´ÅÅÌ¿ªÏú,½ÚÊ¡¿Õ¼ä,²¢ÔÚijЩÇé¿öÏÂÌá¸ß²éѯÐÔÄÜ¡£
±íѹËõÊÇÈçºÎ¹¤×÷µÄ
ÔÚOrcle9iµÚ2°æÖУ¬±íѹËõÌØÐÔͨ¹ýɾ³ýÔÚÊý¾Ý¿â±íÖз¢ÏÖµÄÖØ¸´Êý¾ÝÖµÀ´½ÚÊ¡¿Õ¼ä¡£Ñ¹ËõÊÇÔÚÊý¾Ý¿âµÄÊý¾Ý¿é¼¶±ðÉϽøÐеġ£µ±È·¶¨Ò»¸ö±íÒª±»Ñ¹Ëõºó£¬Êý¾Ý¿â±ãÔÚÿһ¸öÊý¾Ý¿âÊý¾Ý¿éÖб£ ......