📄 topicpublish.java
字号:
package com.sjx.jms;
import java.util.*;
import javax.jms.*;
import javax.naming.*;
public class TopicPublish {
Context context = null;
TopicConnectionFactory factory = null;
TopicConnection topicConnection = null;
TopicSession topicSession = null;
Topic topic = null;
TopicPublisher topicPublisher = null;
TextMessage message = null;
public TopicPublish(){
try {
//取得JNDI上下文和连接
context = GetJini.getContext();
//获得JMS Topic连接队列工厂
factory = GetJini.getTopicConnectionFactory(context);
//创建一个Topic连接,并启动
topicConnection = GetJini.getTopicConnection(factory);
topicConnection.start();
//创建一个Topic会话,并设置自动应答
topicSession =topicConnection.createTopicSession(false, Session.AUTO_ACKNOWLEDGE);
//lookup 得到 topic1
topic = (Topic) context.lookup("topic1");
//用Topic会话生成Topic发布器
topicPublisher = topicSession.createPublisher(topic);
} catch (NamingException e) {
e.printStackTrace();
} catch (JMSException e) {
e.printStackTrace();
}
}
public void publicMsg(String string){
try {
//发布消息到Topic
message = topicSession.createTextMessage("你好,欢迎定购Topic类消息\n" + string );
topicPublisher.publish(message);
//后台显示发布成功
System.out.println("消息发布到Topic");
} catch (JMSException e) {
e.printStackTrace();
}
}
public void close(){
GetJini.closeTopicPublisher(topicPublisher);
GetJini.closeTopicSession(topicSession);
GetJini.closeTopicConnection(topicConnection);
GetJini.closeContext(context);
}
/*public static void main(String args[]){
TopicPublish tp = new TopicPublish();
tp.publicMsg();
tp.close();
}*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -