先说明一下背景,最近忙着弄一个分布式架构的项目,每个子节点基于ssm,还有其它的缓存,异常,每个节点之间的应用又根据层级拆分,bean、service、provider、consumer,不是zookeeper+dubbo,特殊的业务需求我们自己写节点管理,但是借用了dubbo的思想。
原项目用的缓存是codis,可是codis回去keys集合的方法是无效的,原因也查不出来。先安装redis客户端,于是便自己整合进redis。整合的思路是:
- maven 引包
- redis.properties
- application-redis.xml
- redis工具类
- 使用
可是诡异的事情出现了,不管怎么整合,spring就是代理不了redis。网上的方法能试的几乎都试了,原项目的配置是固定的,可能是版本冲突问题,也可能是配置文件。以前自己的项目中整合redis,10分钟搞定,现在在固有的架构上整合不了。
最简单的方法:
于是,便另辟蹊径,redis跟mysql一样都是独立的部分,mysql可以用jdbc,也可以用spring数据源。redis也一样,那我就不通过spring。用最原始的方法,百度搜索redis教程,在傻瓜式教程的目录中找到”java使用redis“,看,就这么简单:
- maven引redis-client包(就这一个够了)
- 代码(这里是最基本的代码,也可以根据业务自己封装成工具类):
import redis.clients.jedis.Jedis;
public class RedisJava {
public static void main(String[] args) {
//连接本地的 Redis 服务
Jedis jedis = new Jedis("localhost");
System.out.println("连接成功");
//查看服务是否运行
System.out.println("服务正在运行: "+jedis.ping());
//设置 redis 字符串数据
jedis.set("wen", "shit");
// 获取数据并输出
Set<String> keys = jedis.keys("*");
Iterator<String> it=keys.iterator() ;
while(it.hasNext()){
String key = it.next();
System.out.println(key);
}
}
}