1:JMS的使用類似于JDBC ,SUN只是提出一個規范接口,由不同的MOM廠商實現。
2: MQ 啟動后應用程序可以獨立的操作JMS接口,應用程序并不依賴于容器,如JBOSS。直接通過jndi訪問MQ。
3:使用JBOSS的MQ應用程序需要包含如下jar文件:

4:JBOSS默認的MQ訪問端口為1099 "jnp://127.0.0.1:1099"
5: 使用實例
創建 TOPIC PUBLISHER
創建 TOPIC SUBSCRIBER
2: MQ 啟動后應用程序可以獨立的操作JMS接口,應用程序并不依賴于容器,如JBOSS。直接通過jndi訪問MQ。
3:使用JBOSS的MQ應用程序需要包含如下jar文件:

4:JBOSS默認的MQ訪問端口為1099 "jnp://127.0.0.1:1099"
5: 使用實例
創建 TOPIC PUBLISHER
1 Hashtable props = new Hashtable();
2 props.put(Context.INITIAL_CONTEXT_FACTORY,
3 "org.jnp.interfaces.NamingContextFactory");
4 props.put(Context.PROVIDER_URL, "jnp://127.0.0.1:1099");
5 props.put("java.naming.rmi.security.manager", "yes");
6 props.put(Context.URL_PKG_PREFIXES, "org.jboss.naming");
7 Context jndiContext = new InitialContext(props);
8 //從JNDI得ConnectionFactory
9 TopicConnectionFactory topicFactory = (TopicConnectionFactory) jndiContext
10 .lookup(factoryJNDI);
11 //用ConnectionFactory創建連接
12 topicConnection = topicFactory.createTopicConnection();
13 //使用連接創建會話
14 topicSession = topicConnection.createTopicSession(false,
15 Session.AUTO_ACKNOWLEDGE);
16 //查找JNDI topic并使用會話創建之
17 topic = (Topic) jndiContext.lookup(topicJNDI);
18 topicPublisher = topicSession.createPublisher(topic);
2 props.put(Context.INITIAL_CONTEXT_FACTORY,
3 "org.jnp.interfaces.NamingContextFactory");
4 props.put(Context.PROVIDER_URL, "jnp://127.0.0.1:1099");
5 props.put("java.naming.rmi.security.manager", "yes");
6 props.put(Context.URL_PKG_PREFIXES, "org.jboss.naming");
7 Context jndiContext = new InitialContext(props);
8 //從JNDI得ConnectionFactory
9 TopicConnectionFactory topicFactory = (TopicConnectionFactory) jndiContext
10 .lookup(factoryJNDI);
11 //用ConnectionFactory創建連接
12 topicConnection = topicFactory.createTopicConnection();
13 //使用連接創建會話
14 topicSession = topicConnection.createTopicSession(false,
15 Session.AUTO_ACKNOWLEDGE);
16 //查找JNDI topic并使用會話創建之
17 topic = (Topic) jndiContext.lookup(topicJNDI);
18 topicPublisher = topicSession.createPublisher(topic);
創建 TOPIC SUBSCRIBER
//創建Subscriber
topicSubscriber = topicSession.createSubscriber(topic);
//注冊MessageListener 必須實現onMessage方法
topicSubscriber.setMessageListener(this);
topicConnection.start();
topicSubscriber = topicSession.createSubscriber(topic);
//注冊MessageListener 必須實現onMessage方法
topicSubscriber.setMessageListener(this);
topicConnection.start();