码迷,mamicode.com
首页 > 编程语言 > 详细

【sping揭秘】24、Spring框架对JMS的集成(无环境版,以后学MQ的时候再隆重介绍)& 任务调度和线程池

时间:2018-07-29 18:51:30      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:factory   tor   pre   schedule   消息发送   模板模式   final   poi   detail   

这个我也不是很了解,那么这个需要好好学习一下了

 

 

JMS有2种消息域类型

 

1、 point to point 点对点模式

 

 

2、发布订阅模式  publish/subscribe Pub/Sub 模式

 

 

传统JMS API开发

 

目前没有环境,所以目前就写个demo,后面补上环境去测试一发

 

package jms;

import javax.jms.Connection;
import javax.jms.ConnectionFactory;
import javax.jms.Destination;
import javax.jms.JMSException;
import javax.jms.MessageProducer;
import javax.jms.Session;
import javax.jms.TextMessage;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;

import org.junit.Test;

/**
 * 测试jms方法
 * @author xiaof
 *
 */
public class JmsTest1 {

	/**
	 * jms消息发送
	 */
	@Test
	public void test1() {
		Connection con = null;
		Session session = null;			
		
		try {
			//获取jndi
			Context context = new InitialContext();
			
			ConnectionFactory connectionFactory = (ConnectionFactory) context.lookup("jndi/jms/connectionFactory");
			Destination destination = (Destination) context.lookup("jndi/jms/destination");
			
			con = connectionFactory.createConnection();//创建连接
			session = con.createSession(false, Session.AUTO_ACKNOWLEDGE);
			MessageProducer messageProducer = session.createProducer(destination); //设置对象
			
			TextMessage message = session.createTextMessage();
			message.setText("Hi");
			messageProducer.send(message);
			
			messageProducer.close();
			session.close();
			
			
		} catch (NamingException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (JMSException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} finally {
			//关闭资源
			if(con != null) {
				try {
					con.close();
				} catch (JMSException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		}

	}
	
}

  

Spring改进后JMS

 

Jmstemplate 又来了,看到template我就不多bb了,大家自己体会,现在懂了吧,模板模式是真的很强大

 

我不多bb,大家自己去看template的封装吧,我都看吐了

 

技术分享图片

 

 技术分享图片

反正这个template就是封装了一堆方法用以简便我们的操作

 

算了,不看了,以后看消息队列的时候再补充一下吧

 

 

Spring中的任务调度和线程池支持

 

 

Quartz

 

划分:

 

Job,JobDetail,Trigger,Scheduler

 

 技术分享图片

 

 

 

Spring如何融入quartz的呢?

 

 

Jdk中的timer

 技术分享图片

 

【sping揭秘】24、Spring框架对JMS的集成(无环境版,以后学MQ的时候再隆重介绍)& 任务调度和线程池

标签:factory   tor   pre   schedule   消息发送   模板模式   final   poi   detail   

原文地址:https://www.cnblogs.com/cutter-point/p/9386126.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!