首先只要创建一个实现了MessageListener的POJO。
package test;
import javax.jms.JMSException;
import javax.jms.MapMessage;
import javax.jms.Message;
import javax.jms.MessageListener;
public class MDPTest implements MessageListener {
public void onMessage(Message message) {
if (message instanceof MapMessage) {
MapMessage mapMsg = (MapMessage) message;
String title;
try {
title = mapMsg.getString("title");
System.out.println("Received: " + title);
System.out.println(" " + mapMsg.getString("type"));
System.out.println(" " + mapMsg.getString("body"));
System.out.println("Received: " + message);
} catch (JMSException e) {
e.printStackTrace();
}
}
}
}
然后就是在SPRING里配置MDP所需的BEAN,一个最常用的DefaultMessageListenerContainer即可。
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"
class="org.springframework.jms.listener.DefaultMessageListenerContainer"
之后只需把ACTIVEMQ配置好启动起来就OK了。当有消息进入IN这个队列时,SPRING会自动INVOKE我们的MDP。
No comments:
Post a Comment