activemq最简单的例子

缺乏、安全感 2022-04-16 05:29 295阅读 0赞

import org.apache.activemq.ActiveMQConnectionFactory;
import javax.jms.*;
//生产者
public class Producer {
private static final String URL = “tcp://0.0.0.0:61616”;
private static final String SUBJECT = “myqueue”;
public static void main(String[] args) {
ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(URL);
Connection connection = null;
try {
connection = connectionFactory.createConnection();
connection.start();
//创建Session,此方法第一个参数表示会话是否在事务中执行,第二个参数设定会话的应答模式
Session session = connection.createSession(true, Session.AUTO_ACKNOWLEDGE);
Destination dest = session.createQueue(SUBJECT);

  1. //通过session可以创建消息的生产者
  2. MessageProducer producer = session.createProducer(dest);
  3. //初始化一个mq消息
  4. TextMessage message = session.createTextMessage("hello active mq 中文kkkk" );
  5. //发送消息
  6. producer.send(message);
  7. System.out.println("send message {}....");
  8. session.commit();
  9. session.close();
  10. } catch (JMSException e) {
  11. e.printStackTrace();
  12. }finally {
  13. if(connection!=null){
  14. try {
  15. connection.close();
  16. } catch (JMSException e) {
  17. e.printStackTrace();
  18. }
  19. }
  20. }
  21. }

}


//消费者
import org.apache.activemq.ActiveMQConnectionFactory;
import javax.jms.*;
//消费者
public class Consumer {
private static final String URL = “tcp://0.0.0.0:61616”;
private static final String SUBJECT = “myqueue”;
// private static Logger logger = LoggerFactory.getLogger(MqServer.class);
public static void main(String[] args) {
ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(URL);
try {
Connection connection = connectionFactory.createConnection();
connection.start();
//创建Session,此方法第一个参数表示会话是否在事务中执行,第二个参数设定会话的应答模式
Session session = connection.createSession(true, Session.AUTO_ACKNOWLEDGE);
Destination dest = session.createQueue(SUBJECT);
//通过session可以创建消息的生产者
MessageConsumer messageConsumer = session.createConsumer(dest);
//接收 消息
TextMessage message = (TextMessage) messageConsumer.receive();
System.out.println((“condsumer message {} “+message.getText()));
} catch (JMSException e) {
e.printStackTrace();
}
}
}

发表评论

表情:
评论列表 (有 0 条评论,295人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Java简单死锁例子

    死锁是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。 简单来说: 1. 线程1和线程2的执行逻