`
6246850
  • 浏览: 7434 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
社区版块
存档分类
最新评论

JMS接收消息实例

    博客分类:
  • Ejb
阅读更多
package com.eway.jms;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import javax.jms.JMSException;
import javax.jms.ObjectMessage;
import javax.jms.Queue;
import javax.jms.QueueConnection;
import javax.jms.QueueConnectionFactory;
import javax.jms.QueueSender;
import javax.jms.QueueSession;
import javax.jms.Session;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;

import com.eway.pojo.Inhospitaldata;
import com.eway.util.Propertie;

/**
*
* @author yanghui
* @2009-07-03
* @消息发送
*
*/
public class QMProducer {
/**
* 定义JNDI上下文构造器
*/
public final static String JNDI_FACTORY = "weblogic.jndi.WLInitialContextFactory";
/**
* 定义JMS上下文构造器
*/
public final static String JMS_FACTORY = "jms/QueueConnectionFactory";
/***************************************************************************
* 定义消息列队
*/
public final static String QUEUE = "jms/fileQueue";
// 声明队列连接构造器
private QueueConnectionFactory queueConnectionFactory = null;
// 声明队列连接
private QueueConnection queueConnection = null;
// 声明队列会话
private QueueSession queueSession = null;
// 声明队列发送
private QueueSender queueSender = null;
// 声明队列
private Queue queue = null;
// 声明发送对象方式
private ObjectMessage msg = null;

public void init(Context ctx, String queueName) {
   try {
    queueConnectionFactory = (QueueConnectionFactory) ctx
      .lookup(JMS_FACTORY);
    queueConnection = queueConnectionFactory.createQueueConnection();
    queueSession = queueConnection.createQueueSession(false,
      Session.AUTO_ACKNOWLEDGE);
    queue = (Queue) ctx.lookup(queueName);
    queueSender = queueSession.createSender(queue);
    msg = queueSession.createObjectMessage();
    queueConnection.start();
   } catch (NamingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   } catch (JMSException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
}

public void send(List<Inhospitaldata> message) throws JMSException {

   msg.setObject((Serializable) message);
   queueSender.send(msg);

}

public void close() throws JMSException {
   queueSender.close();
   queueSession.close();
   queueConnection.close();
}

public void sendInfo(List<Inhospitaldata> inhospitaldataList) {
   try {

    System.setProperty(Context.INITIAL_CONTEXT_FACTORY, JNDI_FACTORY);
    System.setProperty(Context.PROVIDER_URL, Propertie.getPropertie()
      .getProperty("provider"));
    Context context = new InitialContext();
    init(context, QUEUE);
    send(inhospitaldataList);

   } catch (NamingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   } catch (JMSException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   } finally {
    try {
     close();
    } catch (JMSException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
   }
}

public static void main(String[] args) {
   QMProducer producer = new QMProducer();
   Inhospitaldata inhospitaldata = new Inhospitaldata();
   inhospitaldata.setXm("yanghui131");
   List<Inhospitaldata> list = new ArrayList<Inhospitaldata>();
   list.add(inhospitaldata);
   producer.sendInfo(list);
   System.out.println("发送成功");
}
}
分享到:
评论
7 楼 pure 2008-04-26  
还是没搞懂你的题是啥意思!!
6 楼 6246850 2008-04-26  
Illum 写道
第二题是很经典的C语言的例题嘛
去翻翻那本C的课本就会了



没课本啦...都不知道到那去了...
这题我是这样做的
String str = "dcba";
Map tree = new TreeMap();
for (int i = 0; i < str.length(); i++) {
char ch = str.charAt(i);
if ((ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z')) {
if (!tree.containsKey(ch)) {
tree.put(ch,1);
} else {
Integer in = (Integer) tree.get(ch) + 1;
tree.put(ch, in);
}
}
}
Iterator tit = tree.keySet().iterator();
while (tit.hasNext()) {
Object temp = tit.next();
System.out.print(temp.toString() + "(" + tree.get(temp) + ")");
}


不知道你有没有更简单的方法
5 楼 6246850 2008-04-26  
aniken 写道
6246850 写道
1,用字符串输入数组里面的数据 
达到效果:
'A','B','C'

2,wo jiao shenzhen
这是一个字符串,输入出里面字母出现的次数。
如:a(2)j(1)`


汉语没学好。



是啊....真有点想回去读小学....
4 楼 6246850 2008-04-26  
GreenForest 写道
觉得楼主没有把题目描述清楚。


不好意思!前面没注意!现在应该清楚了吧!
3 楼 Illum 2008-04-26  
第二题是很经典的C语言的例题嘛
去翻翻那本C的课本就会了
2 楼 aniken 2008-04-26  
6246850 写道
1,用字符串输入数组里面的数据 
达到效果:
'A','B','C'

2,wo jiao shenzhen
这是一个字符串,输入出里面字母出现的次数。
如:a(2)j(1)`


汉语没学好。
1 楼 GreenForest 2008-04-26  
觉得楼主没有把题目描述清楚。

相关推荐

    JMS完全实例(八个实例)

    实例中可能会展示如何创建消息监听器,并在接收到消息时执行特定的业务逻辑。 5. **POJO消息监听** 在一些实例中,我们可能会看到使用Plain Old Java Object(POJO)作为消息监听器的例子。这意味着消息监听器并不...

    activeMQ-JMS实例

    总结来说,"activeMQ-JMS实例"是一个基于Spring MVC的示例,它演示了如何使用Spring的JMS支持与ActiveMQ结合,实现消息的发送和接收。这个实例对于学习和理解JMS以及如何在实际项目中应用它是很有帮助的。通过这个...

    activemq与spring整合发送jms消息入门实例

    3. **创建消息模板**:Spring的`JmsTemplate`是发送和接收JMS消息的核心工具。在配置文件中创建一个`JmsTemplate`的bean,并注入连接工厂。 ```xml &lt;bean id="jmsTemplate" class="org.springframework.jms.core....

    JMS信息传输实例代码

    在发布/订阅模型中,消息生产者产生一个消息后,把这个消息发送到一个 Topic 中,这个 Topic 可以同时有多个接收者在监听,当一个消息到达这个 Topic 之后,所有消息接收者都会收到这个消息。 JMS 中的概念包括 ...

    JMS经典实例 基于weblogic

    JMS允许应用程序创建、发送、接收和读取消息,以此来解耦生产者和消费者,使得两者不必同时在线也能进行通信。在基于WebLogic的环境中,JMS被广泛应用于构建可扩展、高可用性的应用程序。 WebLogic Server是Oracle...

    JMS整合Spring实例

    **JMS整合Spring实例** Java消息服务(Java Message Service,简称JMS)是Java平台中用于企业级应用间异步通信的一种标准接口。它允许应用程序创建、发送、接收和读取消息,以此来解耦生产者和消费者。而Spring框架...

    JBOSS建立JMS应用实例

    1. 概念理解:JMS是Java平台中用于企业级消息传递的API,它定义了生产、发送、接收和消费消息的标准接口。 2. 消息模型:JMS支持两种消息模型——点对点(Point-to-Point)和发布/订阅(Publish/Subscribe)。前者...

    tomcat spring jms 异步消息传递入门实例

    本教程将带你逐步了解如何利用Tomcat、Spring和JMS(Java Message Service)构建一个简单的异步消息传递入门实例。 首先,让我们来理解一下核心组件: 1. **Tomcat**:这是一个流行的开源Java Servlet容器,用于...

    JMS详细实例学习教程

    Destinations:Destinations 是指消息发送客户端的消息目标和消息接收客户端的消息来源,它也是预先在 jms.xml 定义好的。对于 PTP 类型,Destinations 对应的类型为 Queue,对于 Pub/Sub 类型,Destinations 对应的...

    spring jms tomcat 异步消息传递入门实例

    在这个"spring jms tomcat 异步消息传递入门实例"中,我们将探讨如何在Spring框架下利用JMS和Tomcat实现异步消息传递,以提高系统性能和可扩展性。 首先,理解异步消息传递的概念至关重要。在同步通信中,发送方...

    javax.jms.jar包与JMS实例代码

    总结起来,`javax.jms.jar` 包提供了Java开发人员与JMS兼容的消息中间件进行通信的工具,而`demo` 文件中的实例代码展示了如何在实际应用中使用这些工具。通过学习和实践这些示例,你可以更好地理解和掌握Java消息...

    JAVA消息服务实例

    在JMS中,消息被发送到一个消息代理(message broker),然后由消费者从该代理接收消息。这种方式允许应用程序之间进行解耦,使得它们可以在无需直接交互的情况下交换数据。 JMS主要包含两种模型: 1. 点对点...

    JMS消息发送及订阅

    同样,我们可以从JMS队列接收消息并处理: ```java from("activemq:queue:MyQueue") .process(new Processor() { public void process(Exchange exchange) throws Exception { Message message = exchange.getIn...

    ActiveMq-JMS简单实例

    例如,使用`javax.jms.ConnectionFactory`创建连接,`javax.jms.Queue`或`javax.jms.Topic`定义目的地,`javax.jms.MessageProducer`发送消息,`javax.jms.MessageConsumer`接收消息。消息可以是TextMessage、...

    Java-JMS实例

    JMS允许开发者在不关心接收方是否在线或能够立即处理消息的情况下发送数据,从而提高系统的可伸缩性和容错性。 **JMS基本概念** 1. **JMS API**:JMS 提供了一组接口和类,使得开发者能够创建、发送、接收和消费...

    JMS-ActiveMQ入门实例

    Java消息服务(Java Message Service,简称JMS)是Java平台中用于创建、发送、接收和阅读消息的应用程序接口。它为应用程序提供了标准的接口,可以跨越多种消息中间件产品进行通信。JMS允许在分布式环境中交换异步...

    spring中集成JMS使用工程实例..eclipse项目例子,带注解.导入即可运行.

    - **`MessageListener`**:实现了JMS接口的监听器,用于处理接收到的消息。 - **`DefaultMessageListenerContainer`**:Spring提供的监听容器,可以自动启动和停止消息监听。 4. **配置JMS** 在Spring配置文件中...

    JMS-activemq 实例(分ppt,eclipse工程,说明三部分)

    **JMS(Java Message Service)** 是Java平台中用于企业级消息传递的一种API,它提供了一种标准的方式来创建、发送、接收和读取消息。JMS允许应用程序在不关心它们是否同时运行的情况下交换数据,这使得它成为分布式...

    jboss服务器下的jms实例

    【JBoss 服务器下的 JMS 实例】 Java 消息服务 (JMS) 是 Java 平台中用于处理异步消息传递的标准API,它在面向服务架构 (SOA) 中扮演着关键角色,特别是在需要与外部系统进行异步通信的企业环境中。JBoss 服务器...

Global site tag (gtag.js) - Google Analytics