第一个MDBBean程序: P2P方式传递消息: 1.创建EJB项目:EJBTestP2P_05 2.在com.credream.ejb包下: MyQueueMDBBean.java package com.credream.ejb; import javax.ejb.ActivationConfigProperty; import javax.ejb.MessageDriven; import javax.jms.JMSException; import javax.jms.Message; import javax.jms.MessageListener; import javax.jms.TextMessage; @MessageDriven(//通过这个说明这是mdbbean activationConfig={//值是一个数组; @ActivationConfigProperty (propertyName="destinationType",propertyValue="javax.jms.Queue"), @ActivationConfigProperty (propertyName="destination",propertyValue="queue/myqueue")//没有这个名词的queue的 时候,就会创建一个, //就是通过这个名词得到destination; } ) public class MyQueueMDBBean implements MessageListener { public void onMessage(Message msg) { TextMessage textMessage=(TextMessage)msg; try { System.out.println(" MyQueueMDBBean被调用了:[[" +textMessage.getText()+"]]"); } catch (JMSException e) { e.printStackTrace(); } } } ----------------------------------------------------------------------------- 3.创建JAVAProject项目:EJBTest05_client com.credream.ejb MyQueueMDBBeanClient.java package com.credream.ejb; import javax.jms.Queue; import javax.jms.QueueConnection; import javax.jms.QueueConnectionFactory; import javax.jms.QueueSender; import javax.jms.QueueSession; import javax.jms.TextMessage; import javax.naming.InitialContext; public class MyQueueMDBBeanClient { /** * @param args */ public static void main(String[] args)throws Exception { InitialContext context=new InitialContext(); //获取QueueConnectionFactory对象 QueueConnectionFactory factory=(QueueConnectionFactory)context.lookup ("ConnectionFactory"); //创建QueueConnection QueueConnection connection=factory.createQueueConnection(); //创建QueueSession对象 QueueSession session=connection.createQueueSession(false, QueueSession.AUTO_ACKNOWLEDGE);//第一个true表示 //需要事物,就是说最后需要commit(),false的时候需要自动的提交,第二个参数是响应模式: 对方收到消息后,自动向服务器响应 //获取Destination对象 Queue queue=(Queue) context.lookup("queue/myqueue"); //创建文本消息 TextMessage msg=session.createTextMessage("hello world!!"); //创建发送者 QueueSender sender=session.createSender(queue); //发送消息 sender.send(msg); //关闭会话 session.close(); connection.close(); System.out.println("消息已经发送"); } } --------------------------------------------------------------------- 4.引入EJB3.0的jar包 5.写入:jndi.properties |