在Java中,可以使用JMS(Java Message Service)来启动监听MQ消息。下面是一个简单的示例代码:
import javax.jms.*;import org.apache.activemq.ActiveMQConnectionFactory;public class MQMessageListener implements MessageListener {private Connection connection;private Session session;private MessageConsumer consumer;public void startListening() {try {// 创建连接工厂ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://localhost:61616");// 创建连接connection = connectionFactory.createConnection();// 启动连接connection.start();// 创建会话session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);// 创建消息队列Destination destination = session.createQueue("YourQueueName");// 创建消息消费者consumer = session.createConsumer(destination);// 设置消息监听器consumer.setMessageListener(this);} catch (JMSException e) {e.printStackTrace();}}@Overridepublic void onMessage(Message message) {try {// 处理收到的消息if (message instanceof TextMessage) {TextMessage textMessage = (TextMessage) message;System.out.println("Received message: " + textMessage.getText());}} catch (JMSException e) {e.printStackTrace();}}public void stopListening() {try {// 关闭连接consumer.close();session.close();connection.close();} catch (JMSException e) {e.printStackTrace();}}}在上面的代码中,首先通过ActiveMQConnectionFactory创建连接工厂,然后使用连接工厂创建连接。接着创建会话和消息队列,并创建消息消费者。然后设置消息监听器为当前类,实现MessageListener接口的onMessage方法来处理收到的消息。最后调用startListening方法启动监听,stopListening方法停止监听。
你需要修改代码中的tcp://localhost:61616为你MQ的地址和端口,YourQueueName为你要监听的消息队列的名称。在onMessage方法中可以根据收到的消息类型来进行不同的处理。