[不忘初心]
前文我们介绍了使用Redis基本命令的方式来实现发布与订阅的功能,但是在实际开发中,我们更多会使用高级语言使用Redis。本文我们就来演示如何使用java语言来实现订阅与发布功能。先特别声明:本文所示代码参考自其他博文,详情见篇尾。
准备工作:
a.操作系统:windows 7
b.其他软件:redis 3.2 , jdk 1.7,eclipse mars
--------------------------------------------------------------------------------------------------------------------------------------------------------
一。非持久化的订阅与发布
1.新建Maven工程,工程类型为quickstart。并修改buildpath中的jre版本为1.7.
2.修改pom文件内容,具体如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.csdn.ingo</groupId>
<artifactId>redis-pub-sub</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>redis-pub-sub</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.8.0</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
</dependencies>
</project>
3.读者按需增加日志配置文件,下文我们使用系统输出代替日志。
log4j.rootLogger=info,stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
4.创建Publisher.java文件,作为消息的发布者,具体内容如下:
package com.csdn.ingo.redis_pub_sub;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import red