【问题标题】:JMS and Oracle AQJMS 和 Oracle AQ
【发布时间】:2011-05-22 09:06:38
【问题描述】:

谁能给我一些示例 java 代码,告诉我如何监听 Oracle AQ 队列?

谢谢 达米安

【问题讨论】:

    标签: oracle jms oracle-aq


    【解决方案1】:

    这是基础知识。 conn 变量包含一个已连接到数据库的常规 JDBC Connection 类。

    QueueConnection queueConnection = AQjmsQueueConnectionFactory. 
            createQueueConnection(conn); 
    QueueSession queueSession = queueConnection. 
            createQueueSession(true, Session.SESSION_TRANSACTED); 
    Queue queue=queueSession.createQueue("my_oracle_queue"); 
    QueueReceiver receiver= queueSession.createReceiver(queue); 
    queueConnection.start(); 
    Message message=receiver.receive(); 
    

    像 AQjmsQueueConnectionFactory 这样的 oracle 特定类在 oracle.jms 包中。

    【讨论】:

    • 嗨,JOTN,谢谢。是否会有一个不断轮询队列的样本?
    • 你不需要轮询,因为进程会阻塞等待消息。如果不想阻塞,看QueueReceiver的setMessageListener方法使用回调。
    • 您好 JotnMany 非常感谢您的意见。我在我们的 webapp 中试用了您的解决方案,效果很好
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-02
    • 1970-01-01
    • 1970-01-01
    • 2013-12-28
    相关资源
    最近更新 更多