快速业务通道

使用Spring JMS轻松实现异步消息传递 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-21
用历史信息创建一个新的消息,发送到一个新的名为CreditRequestReceiveQueue的消息队列。

最后,LoanProc从接收队列中选出响应消息,处理贷款申请来决定是否批准或否决申请。

在这个例程中,两个消息队列都配置在同一个JBoss MQ server上。使用案例用图1的序列图(SequenceDiagram)表示

使用Spring JMS轻松实现异步消息传递 - 编程入门网

图1.贷款处理程序的序列图 (单击截图来查看完整视图)

下面的表3显示了在例程中我所使用的不同技术和开源框架,并按应用逻辑层排列。

表3. 在JMS应用程序中使用的框架

使用Spring JMS轻松实现异步消息传递 - 编程入门网

使用Spring JMS轻松实现异步消息传递(4)

时间:2011-01-15 Srini Penchikala

使用Hermes设置JMS资源

为了异步处理消息,首先我们需要消息队列发送和接收消息。我们可以用Jboss里的配置XML文件创 建一个新的消息队列,然后使用JMS控制台浏览队列的详细情况。清单1显示了配置JMS的XML配置代码片断(这个应该加入到jbossmq- destinations-service.xml文件,位于%JBOSS_HOME%\server\all\deploy-hasingleton\ jm文件夹下。)

清单1.JBoss MQ Server上JMS队列的配置

<!-- Credit Request Send Queue --> <mbean code="org.jboss.mq.server.jmx.Queue" name="jboss.mq.destination:service=Queue,name=CreditRequestSendQueue"> <depends optional-attribute-name="DestinationManager"> jboss.mq:service=DestinationManager </depends> </mbean> <!-- Credit Request Receive Queue --> <mbean code="org.jboss.mq.server.jmx.Queue" name="jboss.mq.destination:service=Queue,name=CreditRequestReceiveQueue"> <depends optional-attribute-name="DestinationManager"> jboss.mq:service=DestinationManager </depends> </mbean>

现在,让我们看看如何使用一个名为Hermes的JMS工具来浏览消息队列。Hermes是一个Java Swing应用程序,它可以创建、管理和监视JMS提供商(例如JBossMQ,WebSphereMQ,ActiveMQ和Arjuna服务器)里的JMS目标。从它的网站上下载Hermes,解压缩.zip文件到本地目录(例如,c:\dev\tools\hermes)。一旦安装完成,双击文件hermes.bat(位于bin文件夹下)启动程序。

要在Hermes里配置JBossMQ服务器,请参考Hermes网站上的这个演示。它有着出色的step-by-step可视化指示来配置JBoss MQ。当配置一个新的JNDI初始上下文时,请输入下面的信息。

providerURL = jnp://localhost:1099 initialContextFactory = org.jnp.interfaces.NamingContextFactory urlPkgPrefixes = org.jnp.interfaces:org.jboss.naming securityCredentials = admin securityPrincipal = admin

当您创建新的目标时,请输入queue/CreditRequestSendQueue和queue/CreditRequestReceiveQueue。图2显示了JMS控制台的主窗口,其中有为JMS例程创建的新的消息队列。

使用Spring JMS轻松实现异步消息传递 - 编程入门网

图 2. Hermes中所有目标的截图.(单击截图来查看完整视图)

下面的图3显示了在从消息发送者类发送消息到CreditRequestSendQueue后,Hermes JMS控制台及消息队列的截图。您可以看见有5个消息在队列中,控制台显示了消息详情,例如消息ID,消息目标,时间戳和实际的消息内容。

使用Spring JMS轻松实现异步消息传递 - 编程入门网

图 3. Hermes中所有队列的截图.(单击截图来查看完整视图)

使用Spring JMS轻松实现异步消息传递(5)

时间:2011-01-15 Srini Penchikala

在例程中使用的队列名称和其他JMS和JNDI参数见表 4。

表4. Spring JMS配置参数

使用Spring JMS轻松实现异步消息传递 - 编程入门网

Spring配置

既然我们已经有了运行例程所需要的JMS目标,现在该了解用XML Spring配置文件(名为spring-jms.xml)来组配JMS组件的具体细节了。这些组件是根据Inversion of C

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号