import javax.jms.*; import javax.naming.*; import java.util.Hashtable; public class Producer { public static void main(String[] args) { try { Hashtable<String, String> env = new Hashtable<>(); env.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory"); env.put(Context.PROVIDER_URL, "tcp://localhost:61616"); Context context = new InitialContext(env); ConnectionFactory cf = (ConnectionFactory) context.lookup("ConnectionFactory"); Destination destination = (Destination) context.lookup("Queue"); Connection connection = cf.createConnection(); Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); MessageProducer producer = session.createProducer(destination); TextMessage message = session.createTextMessage(); message.setText("Hello, JMS!"); producer.send(message); producer.close(); session.close(); connection.close(); } catch (Exception e) { e.printStackTrace(); } } } import javax.jms.*; import javax.naming.*; import java.util.Hashtable; public class Consumer { public static void main(String[] args) { try { Hashtable<String, String> env = new Hashtable<>(); env.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory"); env.put(Context.PROVIDER_URL, "tcp://localhost:61616"); Context context = new InitialContext(env); ConnectionFactory cf = (ConnectionFactory) context.lookup("ConnectionFactory"); Destination destination = (Destination) context.lookup("Queue"); Connection connection = cf.createConnection(); Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); MessageConsumer consumer = session.createConsumer(destination); connection.start(); Message message = consumer.receive(); if (message instanceof TextMessage) { TextMessage textMessage = (TextMessage) message; System.out.println("Received message: " + textMessage.getText()); } consumer.close(); session.close(); connection.close(); } catch (Exception e) { e.printStackTrace(); } } }


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