messageproducer.java

来自「J2EE开发与Weblogic一书中的源代码」· Java 代码 · 共 63 行

JAVA
63
字号
package com.learnweblogic.examples.ch7.topic;

import com.learnweblogic.examples.BaseClient;

import javax.jms.JMSException;
import javax.jms.Session;
import javax.jms.TextMessage;
import javax.jms.Topic;
import javax.jms.TopicConnection;
import javax.jms.TopicConnectionFactory;
import javax.jms.TopicPublisher;
import javax.jms.TopicSession;
import javax.naming.Context;
import javax.naming.NamingException;

public final class MessageProducer extends BaseClient {

    private TopicPublisher publisher;
    private TextMessage msg;

    public MessageProducer(String[] argv)
        throws NamingException, JMSException {
        super(argv);

        Context ctx = getInitialContext();

        TopicConnectionFactory tConFactory =
            (TopicConnectionFactory) ctx.lookup(
                "weblogic.jms.ConnectionFactory");

        Topic messageTopic = (Topic) ctx.lookup("MessageTopic");

        TopicConnection tCon = tConFactory.createTopicConnection();

        TopicSession session =
            tCon.createTopicSession(false, /* not a transacted session */
        Session.AUTO_ACKNOWLEDGE);

        publisher = session.createPublisher(messageTopic);

        msg = session.createTextMessage();

    }

    public void runClient() throws JMSException {

        msg.setText("Hello");
        publisher.publish(msg);

        msg.setText("Welcome to JMS");
        publisher.publish(msg);

    }

    public static void main(String[] argv) throws Exception {

        MessageProducer mp = new MessageProducer(argv);

        mp.runClient();
    }

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?