在上一篇文章中,介绍了如何在weblogic中创建jms相关资源,下面要介绍如何通过java向jms队列中写入消息以及如何从jms队列中取出消息。
要使用weblogic的jms,需要引入以下两个包
javax.jms.jar
wlfullclient.jar
如果是使用jdeveloper开发,直接引入以下两个Library即可
消息发送
java将消息发送到消息队列中,需要经过以下步骤
连接jms服务器
获取连接工厂(Connection Factory)
通过连接工厂创建队列连接(QueueConnection)
通过队列连接创建队列会话(QueueSession)
通过队列会话创建队列生产者(Sender/Product)
创建消息(Message)
通过生产者将消息发送到队列中
具体代码实现:
package asan.demo.jms;
import java.util.Hashtable;
import javax.jms.JMSException;
import javax.jms.Queue;
import javax.jms.QueueConnection;
import javax.jms.QueueConnectionFactory;
import javax.jms.QueueSender;
import javax.jms.QueueSession;
import javax.jms.Session;
import javax.jms.TextMessage;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
public class JMSSender {
private QueueSender sender = null;
private QueueSession session = null;
private static final String JMS_FACTORY_JNDI = "jms/jms_test_connection_factory1";
private static final String JMS_QUEUE_JNDI = "jms/jms_test_queue";
public JMSSender() {
super();
}
public void sendMessage(String msg) {
TextMessage textMsg;
try {
if (this.sender == null) {
this.init();
}
textMsg = session.createTextMessage();
textMsg.setText(msg