消息驱动bean(MDB)是包含业务逻辑的bean。但是, 它通过传递消息来调用。因此, 它就像JMS Receiver。
MDB异步接收消息并对其进行处理。
消息驱动bean从队列或主题接收消息, 因此你必须具有JMS API知识。
消息驱动Bean就像无状态会话Bean一样, 它封装了业务逻辑并且不维护状态。
消息驱动Bean示例
要创建消息驱动的Bean, 需要声明@MessageDriven批注并实现MessageListener接口。
在eclipse ide中, 创建EJB Project, 然后创建如下所示的类:
文件:MyListener.java
package com.srcmini;
import javax.ejb.MessageDriven;
import javax.jms.*;
@MessageDriven(mappedName="myTopic")
public class MyListener implements MessageListener{
@Override
public void onMessage(Message msg) {
TextMessage m=(TextMessage)msg;
try{
System.out.println("message received: "+m.getText());
}catch(Exception e){System.out.println(e);}
}
}
导出ejb项目并部署应用程序。
在glassfish服务器中, 单击“应用程序”->“部署”->“选择文件”->“确定”, 选择mdb jar文件。
现在, 使用上一页介绍的JMS发送消息。
评论前必须登录!
注册