spring redis消息官方入门例子
2014-11-23 18:23
459 查看
参考:http://spring.io/guides/gs/messaging-redis/
非常典型而简单的一个Message-Driven风格.
1.主要依赖pom.xml
3.消息接收端Receiver
4.消息发送端Main
非常典型而简单的一个Message-Driven风格.
1.主要依赖pom.xml
<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.5.2</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-pool2</artifactId> <version>2.2</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-redis</artifactId> <version>1.4.1.RELEASE</version> </dependency>2.Bean配置AppConfig
@Configuration public class AppConfig { @Bean public RedisConnectionFactory redisConnectionFactory(){ JedisConnectionFactory redisConnectionFactory=new JedisConnectionFactory(); redisConnectionFactory.setHostName("192.168.1.118"); redisConnectionFactory.setUsePool(true); return redisConnectionFactory; } @Bean StringRedisTemplate template(RedisConnectionFactory connectionFactory) { return new StringRedisTemplate(connectionFactory); } @Bean public CountDownLatch latch() { return new CountDownLatch(1); } @Bean public Receiver receiver(CountDownLatch latch) { return new Receiver(latch); } @Bean public MessageListenerAdapter listenerAdapter(Receiver receiver) { return new MessageListenerAdapter(receiver, "receiveMessage"); } @Bean public RedisMessageListenerContainer container(RedisConnectionFactory connectionFactory,MessageListenerAdapter listenerAdapter) { RedisMessageListenerContainer container = new RedisMessageListenerContainer(); container.setConnectionFactory(connectionFactory); container.addMessageListener(listenerAdapter, new PatternTopic("chat")); return container; } }
3.消息接收端Receiver
public class Receiver { private CountDownLatch latch; @Autowired public Receiver(CountDownLatch latch) { this.latch = latch; } public void receiveMessage(String message) { System.out.println("Received <" + message + ">"); latch.countDown(); } }
4.消息发送端Main
public class Main { public static void main(String[] args) throws InterruptedException { ApplicationContext ctx = new AnnotationConfigApplicationContext(AppConfig.class); StringRedisTemplate template = ctx.getBean(StringRedisTemplate.class); CountDownLatch latch = ctx.getBean(CountDownLatch.class); System.out.println("Sending message..."); template.convertAndSend("chat", "Hello from Redis!"); latch.await(); System.exit(0); } }
相关文章推荐
- spring整合Redis 入门例子
- spring 结合 Redis 例子,简单入门例子
- spring 结合 Redis 例子,简单入门例子
- spring 结合 Redis 例子,简单入门例子
- Spring.Net + NHibernate 入门例子
- 转:eclipse开发hibernate,spring官方入门教程
- Spring 入门(一个简单的例子)
- spring入门简单登陆例子
- struts+hibernate+spring一个入门的实用例子(上)
- Activemq+spring的第一个程序(入门程序--内嵌Broker--消息队列)
- struts+hibernate+spring一个入门的实用例子(转)
- struts+hibernate+spring入门例子
- Activemq+spring的第一个程序(入门程序--内嵌Broker--消息队列)
- 经典的Spring 入门级例子
- 经典的Spring 入门级例子
- struts集成spring官方例子
- spring live上有个入门的整合SSH的例子
- AOP入门的简单例子(Spring AOP实现)
- Spring.Net + NHibernate 入门例子
- Spring 入门(一个简单的例子)