Java Redis实现消息推送 - KelovpString

/ 2评 / 3

    这里有件事情比较尴尬。因为跨了一个服务平台,所以得通过消息通知来实现功能(其实高耦合我查表也能解决,但是被否决了)

    废话不多说:在这次是通过Redis 在Java当中的使用来实现。

    在老早以前我安装了Redis本地,尝试了这种Map式的存储特点,听说其I/O效率高,但是也没有做测试,百度说:

    在本地使用Java的时候我们分为两个过程:

    压栈:

public class TestCollect {
	private static RedisTemplate<String, String> redisTemplate = RedisFactory
            .createStringRedisTemplate("TestTracke");
	@Test
	public void TestIn(){
//		redisTemplate.opsForList().leftPush("first", "{}");
//		redisTemplate.opsForList().leftPush("second", "{}");
	}
}

    当然,在使用RedisFactory创建RedisTemplate的时候得选取名称空间,而在入栈的时候得设定key。(注意左右两个left/right)

    出栈:

	 private static RedisTemplate<String, String> redisTemplate = RedisFactory
	            .createStringRedisTemplate("TestTracke");
         String collectStr = redisTemplate.opsForList().leftPop("first", 1, TimeUnit.SECONDS);
	 String contentStr = redisTemplate.opsForList().leftPop("second", 1, TimeUnit.SECONDS);

    以上便是来自Java Spring Redis的简单使用,如果是普通情况直接使用的话得导入 

import redis.clients.jedis.Jedis;

     而在使用方法上也有所不同:得先创建连接(把Redis理解为DB就很好接受了)

public class RedisJava {
    public static void main(String[] args) {
        //连接本地的 Redis 服务
        Jedis jedis = new Jedis("localhost");
        System.out.println("连接成功");
        //查看服务是否运行
        System.out.println("服务正在运行: "+jedis.ping());
    }
}
public class RedisKeyJava {
    public static void main(String[] args) {
        //连接本地的 Redis 服务
        Jedis jedis = new Jedis("localhost");
        System.out.println("连接成功");
 
        // 获取数据并输出
        Set<String> keys = jedis.keys("*"); 
        Iterator<String> it=keys.iterator() ;   
        while(it.hasNext()){   
            String key = it.next();   
            System.out.println(key);   
        }
    }
}


  1. 网易云蜀黍说道:

    1.遇到了什么问题,需要解决什么问题。2.有哪些方法可以解决这个问题,每个方法的优缺点对比。3.选一个最好的方法详细说明。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注