我的JMS应用

点睛项目ActiveMQ+jms客户端实现
JMS的简介:(1)JMS(Java Message Service,Java消息服务)是一组Java应用程序接口(Java API),它提供创建、发送、接收、读取消息的服务。JMS 使您能够通过消息收发服务从一个 JMS 客户机向另一个 JML 客户机交流消息。
JMS是一种与厂商无关的 API,用来访问消息收发系统。它类似于 JDBC (Java Database Connectivity):这里,JDBC 是可以用来访问许多不同关系数据库的 API,而 JMS 则提供同样与厂商无关的访问方法,以访问消息收发服务。许多厂商目前都支持 JMS,包括 IBM 的 MQSeries、BEA的 Weblogic JMS service和 Progress 的 SonicMQ.
(2)JMS典型的应用场景:操作可异步执行.发email了, 发msn消息了. 或者一些比较耗时的操作, 比如要在某目录下生成一个大报表. 操作者把指令发出去就完事.

项目JMS客户端需求
本项目客户端主要是实现各个子系统之间用户注册同步、邮箱验证同步、密码同步及邮箱同步。

JMS客户端技术需求:

主要实现注册用户、邮箱验证、修改密码和邮箱的监听,监听到操作执行添加用户、用户解锁、修改密码、修改邮箱等操作。
实现注册用户、邮箱验证、修改密码、修改邮箱向其他系统发送信息。
信息处理错误,记录下来,以便管理员查看,然后手动执行操作详细实现:
一:配置服务器信息
服务器在spring配置如下:

tcp://192.168.1.58:61616

二:发送操作:
发送主要靠“JmsTemplate”,如下所示调用convertAndSend(Dest, map)方法,第一个参数为发送的目标地址,可以 任意定义,只有接收方制定了相同的目标地址,就可以接收到。

public void sendMapMsg(Map map,String Dest) {
getJmsTemplate().convertAndSend(Dest, map);

}
发送的spring配置如下所示。

Spring配置如下:

三:接收操作
接收操作就是配置监听器,然后监听其他项目发送的消息,当其他用户发送的目标地址,和该监听所配置的目标地址一样时,将会触发监 听,然后执行该监听器所指定的方法。

监听器接收代码如下:
Map map = (Map)this.getMessageConverter().fromMessage(message);
djMemberManager.resetEmailActiveMQ(map);

用map接收监听到的信息,然后调用“service”方法,然后执行相应的操作。djMemberManager为“service”
附录:
以下为发送监听的目标地址
1)、发送邮件时,destination为DJMail.mailHandle.sendMail,message为{‘to’:'收件人’, ‘from’:'发件人’, ‘subject’:'标题’, ‘html’:'正文’} 2)、用户注册后,destination为DJPassport.jmsHandle.register,message为{‘app’:'应用程序名’, ‘username’:”, ‘password’:”, ‘email’:”} 3)、用户通过邮件确认注册后,destination为DJPassport.jmsHandle.verifyRegistration,message为{‘app’:'应用程序名’, ‘username’:”} 4)、用户修改密码后,destination为DJPassport.jmsHandle.resetPassword,message为{‘app’:'应用程序名’, ‘username’:”, ‘password’:”} 5)、用户修改Email后,destination为DJPassport.jmsHandle.resetEmail,message为{‘app’:'应用程序名’, ‘username’:”, ‘email’:”} 6)、Consumer接收了一个消息,但是却不能正确消费,destination为DJRecovery.failureHandle.saveFailure,message为{‘destination’:'该consumer的destination’, ‘message’:'该consumer的message’}Consumer要监听以下queue,并正确的消费消息(因为每个子系统都不一样,以下给出的消费行为只是建议,消费行为可以为空,但必须都定义了这些consumer) 1)、destination为${appName}.register.register,建议消费行为:将用户名、密码(自定义encode规则)写入数据库,将accountLocked设为true,将enabled设为true 2)、destination为${appName}.register.verifyRegistration,建议消费行为:通过用户的注册验证,给用户赋予默认角色 3)、destination为${appName}.register.resetPassword,建议消费行为:修改用户密码 4)、destination为${appName}.register.resetEmail,建议消费行为:修改用户email
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值