一:什么是redis服务器
redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
二:java使用redis服务器的简单实例
1:下载redis服务器,可以根据操作系统版本的不同,下载不同的redis,我的电脑是win7 32位:
链接:http://pan.baidu.com/s/1bpERkT5 密码:ek2d
2:下载 jedis-2.9.0.jar redis驱动jar包
3:启动redis服务器
然后就可以写程序访问了。
public class RedisService {public static Jedis jedis;static {init();}/*** 初始化jedis对象,和redis服务器建立连接,本地,默认端口为6379*/public static void init() {jedis = new Jedis("localhost", 6379);System.out.println("连接成功");System.out.println("服务正在运行: " + jedis.ping());}public static void main(String[] args) {setString();setList();getKeys();}/*** 向redis服务器放字符串数据*/public static void setString() {jedis.set("runoobkey", "www.runoob.com");System.out.println("redis 存储的字符串为: " + jedis.get("runoobkey"));}/*** 放list数据*/public static void setList() {jedis.lpush("site-list", "Runoob");jedis.lpush("site-list", "Google");jedis.lpush("site-list", "Taobao");List<String> list = jedis.lrange("site-list", 0, 2);for (int i = 0; i < list.size(); i++) {System.out.println("列表项为: " + list.get(i));}}public static void getKeys() {Set<String> keys = jedis.keys("*");Iterator<String> it = keys.iterator();while (it.hasNext()) {String key = it.next();System.out.println(key);}}}
运行结果:
连接成功
服务正在运行: PONG
redis 存储的字符串为: www.runoob.com
列表项为: Taobao
列表项为: Google
列表项为: Runoob
runoobkey
site-list