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
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);
创建 TOPIC SUBSCRIBER
//创建Subscriber
topicSubscriber = topicSession.createSubscriber(topic);
//注册MessageListener 必须实现onMessage方法
topicSubscriber.setMessageListener(this);
topicConnection.start();