利用stomp.js实现websocket功能,接收ActiveMQ消息队列
一、ActiveMQ消息发送端
package lixj; import java.util.Date; import javax.jms.Connection; import javax.jms.ConnectionFactory; import javax.jms.DeliveryMode; import javax.jms.Destination; import javax.jms.MessageProducer; import javax.jms.Session; import org.apache.activemq.ActiveMQConnectionFactory; public class MQProducer { private static final String USERNAME = "user"; //用户名 private static final String PASSWORD = "321"; //密码 private static final String BROKENURL = "tcp://192.168.204.31:61616"; private static final String Q_NAME = "MessageQueue"; //消息队列 public static void main(String[] args) { ConnectionFactory connectionFactory; Connection connection; Session session; Destination destination; MessageProducer producer; connectionFactory = new ActiveMQConnectionFactory(USERNAME, PASSWORD, BROKENURL); try { connection = connectionFactory.createConnection(); connection.start(); session = connection.createSession(false, Session.CLIENT_ACKNOWLEDGE); destination = session.createQueue(Q_NAME); producer = session.createProducer(destination); producer.setDeliveryMode(DeliveryMode.PERSISTENT); for(int i=0;i<1;i++){ //发送消息 producer.send(session.createTextMessage("【"+i+"】MQTT测试你有一份收文《测试标题》需要及时处理!+"+new Date())); } producer.close(); System.out.println("消息发送完毕"); } catch (Exception e) { e.printStackTrace(); } } }
二、web 页面消息接收代码
<script type="text/javascript" src="/js/stomp.js"></script>
<script type="text/javascript">
var url = "ws://192.168.204.31:61614/stomp";
var destination = "MessageQueue";
var client = Stomp.client(url);
var callbackMSG = function(message) {
if (message.body) {
alert("got message with body " + message.body)
} else {
alert("got empty message");
}
};
var connect_callback = function(frame) {
client.subscribe(destination, callbackMSG);
};
var error_callback = function(error) {
alert(error.headers.message);
};
var headers = {
login: 'user',
passcode: '321',
// additional header
'client-id': 'my-client-id'
};
client.connect(headers, connect_callback, error_callback);
</script>
李小家

浙公网安备 33010602011771号