a simple jsm sample[通俗易懂]

a simple jsm sample[通俗易懂]PS:1.implementsMessageListener 2.createTopicConnection [usingjndi]3.createtwosession4.createpublisherandsubscriber5.setlistener6.connectionstart(),  publisher.publish(messag

大家好,欢迎来到IT知识分享网。

PS:
1. implements MessageListener 

2. create TopicConnection [using jndi]

3. create two session

4. create publisher and subscriber

5. set listener

6. connection start() ,  publisher.publish(message), onMessage()

7. connection close()

a simple jsm sample[通俗易懂]
package
 jms.chat;
a simple jsm sample[通俗易懂]
a simple jsm sample[通俗易懂]

import
 javax.jms.
*
;
a simple jsm sample[通俗易懂]

import
 javax.naming.
*
;
a simple jsm sample[通俗易懂]

import
 java.io.
*
;
a simple jsm sample[通俗易懂]

import
 java.io.InputStreamReader;
a simple jsm sample[通俗易懂]

import
 java.util.Properties;
a simple jsm sample[通俗易懂]
a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂]

public
 
class
 Chat 
implements
 MessageListener 

{

a simple jsm sample[通俗易懂] 
private TopicSession pubSession;
a simple jsm sample[通俗易懂]
a simple jsm sample[通俗易懂] 
private TopicSession subSession;
a simple jsm sample[通俗易懂]
a simple jsm sample[通俗易懂] 
private TopicPublisher publisher;
a simple jsm sample[通俗易懂]
a simple jsm sample[通俗易懂] 
private TopicConnection connection;
a simple jsm sample[通俗易懂]
a simple jsm sample[通俗易懂] 
private String username;
a simple jsm sample[通俗易懂]
a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂] 
/* Constructor. Establish JMS publisher and subscriber */
a simple jsm sample[通俗易懂] 
public Chat(String topicName, String username, String password)
a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂]   
throws Exception {

a simple jsm sample[通俗易懂]  
// Obtain a JNDI connection
a simple jsm sample[通俗易懂]
  Properties env = new Properties();
a simple jsm sample[通俗易懂]  
// … specify the JNDI properties specific to the vendor
a simple jsm sample[通俗易懂]
  InitialContext jndi = new InitialContext(env);
a simple jsm sample[通俗易懂]  
// Look up a JMS connection factory
a simple jsm sample[通俗易懂]
  TopicConnectionFactory conFactory = (TopicConnectionFactory) jndi
a simple jsm sample[通俗易懂]    .lookup(
TopicConnectionFactory);
a simple jsm sample[通俗易懂]  
// Create a JMS connection
a simple jsm sample[通俗易懂]
  TopicConnection connection = conFactory.createTopicConnection(username,
a simple jsm sample[通俗易懂]    password);
a simple jsm sample[通俗易懂]  
a simple jsm sample[通俗易懂]  
// Create two JMS session objects
a simple jsm sample[通俗易懂]
  TopicSession pubSession = connection.createTopicSession(false,
a simple jsm sample[通俗易懂]    Session.AUTO_ACKNOWLEDGE);
a simple jsm sample[通俗易懂]  TopicSession subSession 
= connection.createTopicSession(false,
a simple jsm sample[通俗易懂]    Session.AUTO_ACKNOWLEDGE);
a simple jsm sample[通俗易懂]  
a simple jsm sample[通俗易懂]  
a simple jsm sample[通俗易懂]  
// Look up a JMS topic
a simple jsm sample[通俗易懂]
  Topic chatTopic = (Topic) jndi.lookup(topicName);
a simple jsm sample[通俗易懂]  
// Create a JMS publisher and subscriber
a simple jsm sample[通俗易懂]
  TopicPublisher publisher = pubSession.createPublisher(chatTopic);
a simple jsm sample[通俗易懂]  TopicSubscriber subscriber 
= subSession.createSubscriber(chatTopic);
a simple jsm sample[通俗易懂]  
// Set a JMS message listener
a simple jsm sample[通俗易懂]
  subscriber.setMessageListener(this);
a simple jsm sample[通俗易懂]  
a simple jsm sample[通俗易懂]  
// Intialize the Chat application
a simple jsm sample[通俗易懂]
  set(connection, pubSession, subSession, publisher, username);
a simple jsm sample[通俗易懂]  
// Start the JMS connection; allows messages to be delivered
a simple jsm sample[通俗易懂]
  connection.start();
a simple jsm sample[通俗易懂] }

a simple jsm sample[通俗易懂]
a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂] 
/* Initialize the instance variables */
a simple jsm sample[通俗易懂] 
public void set(TopicConnection con, TopicSession pubSess,
a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂]   TopicSession subSess, TopicPublisher pub, String username) 
{

a simple jsm sample[通俗易懂]  
this.connection = con;
a simple jsm sample[通俗易懂]  
this.pubSession = pubSess;
a simple jsm sample[通俗易懂]  
this.subSession = subSess;
a simple jsm sample[通俗易懂]  
this.publisher = pub;
a simple jsm sample[通俗易懂]  
this.username = username;
a simple jsm sample[通俗易懂] }

a simple jsm sample[通俗易懂]
a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂] 
/* Receive message from topic subscriber */
a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂] 
public void onMessage(Message message) {

a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂]  
try {

a simple jsm sample[通俗易懂]   TextMessage textMessage 
= (TextMessage) message;
a simple jsm sample[通俗易懂]   String text 
= textMessage.getText();
a simple jsm sample[通俗易懂]   System.out.println(text);
a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂]  }
 catch (JMSException jmse) {

a simple jsm sample[通俗易懂]   jmse.printStackTrace();
a simple jsm sample[通俗易懂]  }

a simple jsm sample[通俗易懂] }

a simple jsm sample[通俗易懂]
a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂] 
/* Create and send message using topic publisher */
a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂] 
protected void writeMessage(String text) throws JMSException {

a simple jsm sample[通俗易懂]  TextMessage message 
= pubSession.createTextMessage();
a simple jsm sample[通俗易懂]  message.setText(username 
+  :  + text);
a simple jsm sample[通俗易懂]  publisher.publish(message);
a simple jsm sample[通俗易懂] }

a simple jsm sample[通俗易懂]
a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂] 
/* Close the JMS connection */
a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂] 
public void close() throws JMSException {

a simple jsm sample[通俗易懂]  connection.close();
a simple jsm sample[通俗易懂] }

a simple jsm sample[通俗易懂]
a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂] 
/* Run the Chat client */
a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂] 
public static void main(String[] args) {

a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂]  
try {

a simple jsm sample[通俗易懂]   
if (args.length != 3)
a simple jsm sample[通俗易懂]    System.out.println(
Topic or username missing);
a simple jsm sample[通俗易懂]   
// args[0]=topicName; args[1]=username; args[2]=password
a simple jsm sample[通俗易懂]
   Chat chat = new Chat(args[0], args[1], args[2]);
a simple jsm sample[通俗易懂]   
// Read from command line
a simple jsm sample[通俗易懂]
   BufferedReader commandLine = new java.io.BufferedReader(
a simple jsm sample[通俗易懂]     
new InputStreamReader(System.in));
a simple jsm sample[通俗易懂]   
// Loop until the word “exit” is typed
a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂]
   while (true{

a simple jsm sample[通俗易懂]    String s 
= commandLine.readLine();
a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂]    
if (s.equalsIgnoreCase(exit)) {

a simple jsm sample[通俗易懂]     chat.close(); 
// close down connection
a simple jsm sample[通俗易懂]
     System.exit(0);// exit program
a simple jsm sample[通俗易懂]
    }
 else
a simple jsm sample[通俗易懂]     chat.writeMessage(s);
a simple jsm sample[通俗易懂]   }

a simple jsm sample[通俗易懂]a simple jsm sample[通俗易懂]  }
 catch (Exception e) {

a simple jsm sample[通俗易懂]   e.printStackTrace();
a simple jsm sample[通俗易懂]  }

a simple jsm sample[通俗易懂] }

a simple jsm sample[通俗易懂]}

 
a simple jsm sample[通俗易懂]

 

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/13016.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信