实习六 消息驱动Bean

上传人:人*** 文档编号:421754286 上传时间:2022-09-03 格式:DOC 页数:25 大小:1.30MB
返回 下载 相关 举报
实习六 消息驱动Bean_第1页
第1页 / 共25页
实习六 消息驱动Bean_第2页
第2页 / 共25页
实习六 消息驱动Bean_第3页
第3页 / 共25页
实习六 消息驱动Bean_第4页
第4页 / 共25页
实习六 消息驱动Bean_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《实习六 消息驱动Bean》由会员分享,可在线阅读,更多相关《实习六 消息驱动Bean(25页珍藏版)》请在金锄头文库上搜索。

1、实验六 消息驱动Bean实验内容在本实验中将学习编写消息驱动Bean,编写消息发送程序,配备消息服务器,测试消息的发送和接受。实验目的u 掌握消息驱动Bean的编写。u 掌握消息发送程序的编写。u 掌握消息服务器的配备。u 掌握消息发送和接受的测试。实验简介本实验一方面创立EJB工程,另一方面创立和部署消息驱动Bean,接着创立消息发送程序,然后配备消息服务器,涉及消息目的和消息工厂,最后测试消息的发送和接受。环境规定服务器:JBoss6.0集成开发环境:MyEclipse 8.5/MyEclipse 8.6实验指引环节1:创立EJB工程myMDB1. 在主菜单中选择【New】【EJB Pro

2、ject】,浮现New EJB Project对话框。2. 在New EJB Project对话框中,Project Name文本框中输入myMDB,J2EE Specification Level项选中Java EE5.0-EJB3,具体如下图所示,点击【Finish】按钮。图6-1环节2:创立消息驱动Bean1. 在主菜单中选择【New】【EJB3 Message Driven Bean】,浮现New EJB3 Message Driven Bean对话框。2. 在New EJB3 Message Driven Bean对话框中,Package文本框中输入ejbBeans, Name文本框

3、中输入MyMDB,Destination Type项选中Queue,具体如下图所示,点击【Finish】按钮。图6-23. MyMDB类自动形成代码如下:package ejbBeans;import javax.ejb.ActivationConfigProperty;import javax.ejb.MessageDriven;import javax.jms.Message;import javax.jms.MessageListener;MessageDriven(mappedName = jms/MyMDB, activationConfig = ActivationConfigPr

4、operty(propertyName=destinationType, propertyValue=javax.jms.Queue), ActivationConfigProperty(propertyName=destination, propertyValue=jms/MyMDB), ActivationConfigProperty(propertyName=acknowledgeMode, propertyValue=Auto-acknowledge)public class MyMDB implements MessageListener public void onMessage(

5、Message arg0) / TODO Auto-generated method stub注意:以上代码中声明的这个消息驱动Bean使用的消息目的是“jms/MyMDB”。ationConfig声明消息的确认模式和消息目的类型(队列)。4.在onMessage措施中添加对消息解决的代码。这里假设接受的消息是TextMessage类型、Object类型、Map类型、Stream类型,接受到消息之后把消息输出到控制台。修改onMessage措施,类MyMDB完整代码如下:package cn.edu.jms.impl;import java.io.ByteArrayOutputStream;i

6、mport javax.ejb.ActivationConfigProperty;import javax.ejb.MessageDriven;import javax.jms.BytesMessage;import javax.jms.MapMessage;import javax.jms.Message;import javax.jms.MessageListener;import javax.jms.ObjectMessage;import javax.jms.StreamMessage;import javax.jms.TextMessage;import cn.edu.jms.bea

7、n.Man;MessageDriven(activationConfig = ActivationConfigProperty(propertyName=destinationType, propertyValue=javax.jms.Queue), ActivationConfigProperty(propertyName=destination, propertyValue=jms/MyMDB1), ActivationConfigProperty(propertyName=acknowledgeMode, propertyValue=Auto-acknowledge)public cla

8、ss MyMDB implements MessageListener public void onMessage(Message msg) try if (msg instanceof TextMessage) TextMessage tmsg = (TextMessage) msg; String content = tmsg.getText(); System.out.println(content); else if(msg instanceof ObjectMessage) ObjectMessage omsg = (ObjectMessage) msg; Man man = (Ma

9、n) omsg.getObject(); String content = man.getName()+ 家住+ man.getAddress(); System.out.println(content); else if(msg instanceof MapMessage) MapMessage map = (MapMessage) msg; String content = map.getString(no1); System.out.println(content); else if(msg instanceof BytesMessage) BytesMessage bmsg = (By

10、tesMessage) msg; ByteArrayOutputStream byteStream = new ByteArrayOutputStream(); byte buffer = new byte256; int length = 0; while (length = bmsg.readBytes(buffer) != -1) byteStream.write(buffer, 0, length); String content = new String(byteStream.toByteArray(); byteStream.close(); System.out.println(

11、content); else if(msg instanceof StreamMessage) StreamMessage smsg = (StreamMessage) msg; String content = smsg.readString(); System.out.println(content); catch (Exception e) e.printStackTrace(); 在项目上建立一种bean,名称为Man,类Man在包cn.edu.jms.bean下,内容如下:package cn.edu.jms.bean;import java.io.Serializable;publ

12、ic class Man implements Serializable private static final long serialVersionUID = -16736359L; private String name;/姓名 private String address;/地址 public Man(String name, String address) this.name = name; this.address = address; public String getName() return name; public void setName(String name) thi

13、s.name = name; public String getAddress() return address; public void setAddress(String address) this.address = address; 5部署消息驱动Beana.如果JBoss没有启动,则启动JBoss。b. 在工具栏点击部署按钮,浮现Project Deployments对话框。图6-3c.在Project Deployments对话框的【Project】下拉列表框中选择“myMDB”。点击【Add】按钮,浮现New Deployment对话框。d.在New Deployment对话框中,【Server】下拉列表框选择WebLogic 10.x,Deploy type项选中Exploded Archive(development),点击【Finish

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号