发送端:
@Stateless
@Local
public class QueueSend implements IQueueSend
{
@Resource(mappedName = "jms/ConnectionFactory")
private ConnectionFactory connectionFactory;
@Resource(mappedName = "jms/RequestQueue")
private Queue requestQueue;
public void sendNotificationForInline(ReportInstance ri) {
Connection connection = null;
try {
connection = connectionFactory.createConnection();
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
Destination dest = (Destination) requestQueue;
MessageProducer messageProducer = session.createProducer(dest);
MapMessage message = session.createMapMessage();
message.setLong("reportInstId", ri.getId());
messageProducer.send(message);
} catch (Exception ex) {
} finally {
if (connection != null) {
try {
connection.close();
} catch (Throwable t) {
}
}
}
}
}
接收端:
@MessageDriven(mappedName = "jms/RequestQueue")
public class NotificationProcesser implements MessageListener {
public void onMessage(Message message) {
if(message instanceof MapMessage)
{
//处理message
}
}
}
Queue:点对点的消息队列,1个消息产生1个对应 1:1
Topic:采取发布/订阅机制的消息主题,1个消息产生多个对应 1:N
分享到:
相关推荐
#### 第五章 消息驱动Bean(Message Driven Bean) - **消息驱动Bean概览**:概述消息驱动Bean的基础知识,了解其在异步通信和消息队列处理中的作用。 #### 第六章 实体Bean(Entity Bean) - **实体Bean的组成**:分析...
3. **消息驱动Bean(Message Driven Beans)**:MDB用于处理JMS(Java Message Service)消息,使得异步处理和解耦变得简单。 ### 注解驱动的编程模型 EJB 3.0的一个显著特点是广泛使用注解,这使得配置文件大大...
- **Message-DrivenBean**: 用于处理异步消息的企业Bean,常用于实现消息驱动的业务逻辑。 - **定义客户端访问接口**: 客户端通过远程接口(Remote Interface)或本地接口(Local Interface)与企业Bean交互。 #### ...
比如,`@Stateless`、`@Stateful`、`@Singleton`、`@MessageDriven`用于标记不同类型的EJB,`@PersistenceContext`和`@PersistenceUnit`用于管理实体管理器。 2. **简化接口**:EJB 3引入了无接口Bean的概念,允许...
#### 五、消息驱动Bean (Message-Driven Bean) - **概述**:简要介绍消息驱动Bean的基本概念及其应用场景。 #### 六、实体Bean (Entity Bean) - **PERSISTENCE.XML配置**:说明如何配置PERSISTENCE.XML文件来管理...
- **Message-Driven Bean**:介绍了消息驱动Bean的原理,这类Bean主要用于异步消息处理。 - **定义客户端访问接口**:讲解了如何定义客户端用来调用企业Bean的方法。 - **企业Bean的“内容”**:讨论了企业Bean...
4. **消息驱动Bean(Message-Driven Beans)**:讲解如何使用JMS(Java Message Service)实现异步处理和解耦系统组件。 5. **依赖注入(Dependency Injection)**:通过JSR 330(Dependency Injection for Java)...
EJB分为三种类型:Session Beans(会话bean)处理单个用户交互,Message-driven Beans(消息驱动bean)处理JMS消息,以及Entity Beans(实体bean)持久化数据到数据库。 4. **JMS(Java Message Service)**:JMS是...
EJB有三种类型:Session Beans、Message Driven Beans和Entity Beans。 3. **JPA(Java Persistence API)与Hibernate**:JPA是JavaEE中的ORM(对象关系映射)标准,允许开发者用面向对象的方式操作数据库。...
EJB有三种类型:Session Beans(会话bean)、Message-driven Beans(消息驱动bean)和Entity Beans(实体bean),分别用于表示业务逻辑、处理消息和持久化数据。 3. **JMS(Java Message Service)**:JMS是Java...
- **在EJB3.0中开发SessionBean、MessageDriven-Bean**:指导如何使用注解来简化EJB的开发过程。 - **JPA(数据库持久化标准)**:介绍Java Persistence API(JPA),一种用于管理实体对象生命周期的标准。 - **...
EJB类型包括会话bean(Session Beans)、实体bean(Entity Beans)和消息驱动bean(Message-driven Beans),分别对应不同类型的业务逻辑处理。 5. **Java Persistence API (JPA)**:JPA是Java平台上的对象关系映射...
它包括三种类型的Bean:Session Beans(处理业务逻辑)、Message-driven Beans(处理消息队列)和Entity Beans(处理持久化的对象)。EJB提供事务管理、安全性和分布式服务,使得开发人员能够专注于业务逻辑,而非...