ibm社区文章,有争议 (同步异步,阻塞非阻塞)

ibm社区的这篇文章讲述了同步异步,阻塞非阻塞的一些概念,内容还是不错的,但是有些说法还是有争议,供参考。

http://www.ibm.com/developerworks/cn/linux/l-async/


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现Spring整合IBM MQ的JMS异步消息发送和同步消息接收,可以按照以下步骤来操作: 1. 在Spring配置文件中配置JmsTemplate和ConnectionFactory,并指定IBM MQ的相关连接信息。 2. 配置一个消息队列发送器和一个消息队列接收器,分别用于异步发送和同步接收消息。 3. 在消息队列发送器中,通过JmsTemplate异步发送消息到指定的队列。 4. 在消息队列接收器中,通过JmsTemplate同步接收消息,并将消息内容返回。 具体代码实现可以参考以下示例: 1. 配置JmsTemplate和ConnectionFactory ```xml <bean id="jmsConnectionFactory" class="com.ibm.mq.jms.MQQueueConnectionFactory"> <property name="transportType" value="1" /> <property name="hostName" value="localhost" /> <property name="port" value="1414" /> <property name="queueManager" value="QUEUE.MANAGER" /> <property name="channel" value="SYSTEM.DEF.SVRCONN" /> </bean> <bean id="jmsTemplate" class="org.springframework.jms.core.JmsTemplate"> <property name="connectionFactory" ref="jmsConnectionFactory" /> <property name="defaultDestinationName" value="SEND.QUEUE" /> <property name="pubSubDomain" value="false" /> <property name="sessionTransacted" value="true" /> </bean> ``` 2. 配置消息队列发送器和接收器 ```xml <bean id="messageSender" class="com.example.MessageSender"> <property name="jmsTemplate" ref="jmsTemplate" /> </bean> <bean id="messageReceiver" class="com.example.MessageReceiver"> <property name="jmsTemplate" ref="jmsTemplate" /> <property name="destinationName" value="RECEIVE.QUEUE" /> </bean> ``` 3. 实现消息队列发送器和接收器 ```java public class MessageSender { private JmsTemplate jmsTemplate; public void setJmsTemplate(JmsTemplate jmsTemplate) { this.jmsTemplate = jmsTemplate; } public void sendMessage(final String message) { jmsTemplate.send(new MessageCreator() { public Message createMessage(Session session) throws JMSException { return session.createTextMessage(message); } }); } } public class MessageReceiver { private JmsTemplate jmsTemplate; private String destinationName; public void setJmsTemplate(JmsTemplate jmsTemplate) { this.jmsTemplate = jmsTemplate; } public void setDestinationName(String destinationName) { this.destinationName = destinationName; } public String receiveMessage() { Message message = jmsTemplate.receive(destinationName); if (message instanceof TextMessage) { TextMessage textMessage = (TextMessage) message; try { return textMessage.getText(); } catch (JMSException e) { e.printStackTrace(); } } return null; } } ``` 通过以上步骤,就可以实现Spring整合IBM MQ的JMS异步消息发送和同步消息接收。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值