import javax.jms.*; import org.jboss.mq.*; import org.jboss.mq.SpyXAQueueConnectionFactory; public class JBossMQTransactionExample { private QueueConnection qConn; private QueueSession qSession; private QueueSender qSender; private QueueReceiver qReceiver; public JBossMQTransactionExample() throws JMSException { QueueConnectionFactory qConnFactory = new SpyXAQueueConnectionFactory(); qConn = qConnFactory.createQueueConnection(); qSession = qConn.createQueueSession(true, Session.AUTO_ACKNOWLEDGE); Queue queue = new org.jboss.mq.SpyQueue("your-queue-name"); qSender = qSession.createSender(queue); qReceiver = qSession.createReceiver(queue); } public void sendMessage(String message) throws JMSException { TextMessage textMessage = qSession.createTextMessage(); textMessage.setText(message); qSender.send(textMessage); } public String receiveMessage() throws JMSException { qConn.start(); Message message = qReceiver.receive(); if (message instanceof TextMessage) { return ((TextMessage) message).getText(); } return null; } public void commitTransaction() throws JMSException { qSession.commit(); } public void rollbackTransaction() throws JMSException { qSession.rollback(); } public void close() throws JMSException { qConn.close(); } public static void main(String[] args) { try { JBossMQTransactionExample example = new JBossMQTransactionExample(); example.sendMessage("Hello, JBossMQ!"); example.commitTransaction(); String receivedMessage = example.receiveMessage(); System.out.println("Received message: " + receivedMessage); example.close(); } catch (JMSException e) { e.printStackTrace(); } } } import javax.jms.*; import org.jboss.mq.*; import org.jboss.mq.SpyQueueConnectionFactory; public class JBossMQMessageAcknowledgementExample { private QueueConnection qConn; private QueueSession qSession; private QueueReceiver qReceiver; public JBossMQMessageAcknowledgementExample() throws JMSException { QueueConnectionFactory qConnFactory = new SpyQueueConnectionFactory(); qConn = qConnFactory.createQueueConnection(); qSession = qConn.createQueueSession(false, Session.CLIENT_ACKNOWLEDGE); Queue queue = new org.jboss.mq.SpyQueue("your-queue-name"); qReceiver = qSession.createReceiver(queue); } public void receiveMessagesAndAcknowledge() throws JMSException { qConn.start(); Message message; while ((message = qReceiver.receive()) != null) { System.out.println("Received message: " + message); message.acknowledge(); } } public void close() throws JMSException { qConn.close(); } public static void main(String[] args) { try { JBossMQMessageAcknowledgementExample example = new JBossMQMessageAcknowledgementExample(); example.receiveMessagesAndAcknowledge(); example.close(); } catch (JMSException e) { e.printStackTrace(); } } }


上一篇:
下一篇:
切换中文