package com.zwy.redis;
import org.junit.Before;
import org.junit.Test;
import redis.clients.jedis.Jedis;
public class Publish {
private Jedis jedis = null;
@Before
public void init() {
jedis = new Jedis("192.168.23.128");
}
@Test
public void publish() {
while(true) {
//发布消息
jedis.publish("channel1", "hahha");
try {
Thread.currentThread().sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
package com.zwy.redis;
import org.junit.Before;
import org.junit.Test;
import redis.clients.jedis.Client;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPubSub;
public class Subcribe {
private Jedis jedis = null;
@Before
public void init() {
jedis = new Jedis("192.168.23.128");
}
@Test
public void subcribe() {
JedisPubSub jedisPubSub = new jedis_pub_sub_listener();
//监听管道
jedis.subscribe(jedisPubSub , "channel1");
}
}
class jedis_pub_sub_listener extends JedisPubSub {
@Override
public void proceed(Client client, String... channels) {
super.proceed(client, channels);
}
@Override
public void onMessage(String channel, String message) {
System.out.println(message);
//消息处理函数
super.onMessage(channel, message);
}
}