Redis是开源的,支持网络、可基于内存也可持久化的key-value数据库,支持主从复制,读写分离,支持5种基本数据类型,高并发性能

安装redis数据库

下载:http://redis.io/download

tar zxvf redis-2.1.0

make (编译Redis)

make install (安装)

redis-server my.conf(启动服务)

redis-cli(打开控制台)

与Java集成,引入jar包如下:

JAVA-API示例:

public class RedisTest{

private Jedis jedis = null; 

    RedisTest() {
//连接redis服务
jedis = new Jedis("127.0.0.1", 6379);
//jedis = new Jedis("localhost"); //权限认证
//jedis.auth("admin"); //查看服务是否运行
System.out.println("Server is running: "+jedis.ping());
} public void testString() {
//添加
jedis.set("name","luangeng"); //拼接
jedis.append("name", " is good"); //删除某个键
jedis.del("name"); //设置多个键值对
jedis.mset("name","luangeng","age","123","qq","1234"); //增1
jedis.incr("age");
} public void testList() {
//Remove the specified keys. returns the number of keys removed.
jedis.del("list","key2","key3"); // 从左边加入
jedis.lpush("list", "5");
// 从右边加入
jedis.rpush("list", "0"); jedis.rpush("list", "-1"); jedis.rpush("list", "2"); long n = jedis.llen("list"); //Sort a Set or a List and Store the Result at dstkey.
jedis.sort("list","b");
System.out.println(jedis.lrange("list",0,-1));
System.out.println(jedis.lrange("b",0,-1));
} public void testSet(){
jedis.del("set");
//添加
jedis.sadd("set","123");
jedis.sadd("set","123");
jedis.sadd("set","1");
jedis.sadd("set","1");
jedis.sadd("set","2");
//移除
jedis.srem("set","2"); System.out.println(jedis.scard("set"));
System.out.println(jedis.smembers("set"));
System.out.println(jedis.sismember("set", "123"));
} public void testMap() {
Map<String, String> map = new HashMap<String, String>();
map.put("k1", "v1");
map.put("k2", "v2");
map.put("k3", "v3");
jedis.hmset("map",map); List<String> rsmap = jedis.hmget("map", "k1", "k2", "k3");
System.out.println(rsmap); jedis.hdel("k3","v3"); Iterator<String> iter=jedis.hkeys("map").iterator();
while (iter.hasNext()){
String key = iter.next();
System.out.println(key+":"+jedis.hmget("map",key));
} jedis.hlen("map");
jedis.exists("map");
jedis.hkeys("map");
jedis.hvals("map");
} public void flushDB(){
//Delete all the keys of the currently selected DB. This command never fails.
jedis.flushDB(); //Delete all the keys of all the existing databases.This command never fails.
//jedis.flushAll();
} public static void main(String[] args) throws InterruptedException { RedisTest rtest = new RedisTest();
rtest.testString();
rtest.testList();
rtest.testSet();
rtest.testMap();
rtest.flushDB(); } }

  

Redis基础的更多相关文章

  1. windows下使用redis,Redis入门使用,Redis基础命令

    windows下使用redis,Redis入门使用,Redis基础命令 >>>>>>>>>>>>>>>> ...

  2. [.net 面向对象程序设计深入](14)Redis——基础

    [.net 面向对象程序设计深入](14)Redis——基础 很长一段时间没更新博客了,坚持做一件事,真不是件容易的事,后面我会继续尽可能的花时间更新完这个系列文章. 因这个系列的文章涉及的范围太大了 ...

  3. linux redis基础应用 主从服务器配置

    Redis基础应用 redis是一个开源的可基于内存可持久化的日志型,key-value数据库redis的存储分为内存存储,磁盘存储和log文件三部分配置文件中有三个参数对其进行配置 优势:和memc ...

  4. [.net 面向对象程序设计深入](36)Redis——基础

    [.net 面向对象程序设计深入](36)Redis——基础 很长一段时间没更新博客了,坚持做一件事,真不是件容易的事,后面我会继续尽可能的花时间更新完这个系列文章. 因这个系列的文章涉及的范围太大了 ...

  5. mysql主从复制、redis基础、持久化和主从复制

    一.mysql(mariadb)基础 1.基础命令(centos7操作系统下) 1.启动mysql systemctl start mariadb 2.linux客户端连接自己 mysql -uroo ...

  6. Redis基础用法、高级特性与性能调优以及缓存穿透等分析

     一.Redis介绍 Redis是一个开源的,基于内存的结构化数据存储媒介,可以作为数据库.缓存服务或消息服务使用.Redis支持多种数据结构,包括字符串.哈希表.链表.集合.有序集合.位图.Hype ...

  7. Redis基础知识补充及持久化、备份介绍(二)--技术流ken

    Redis知识补充 在上一篇博客<Redis基础认识及常用命令使用(一)--技术流ken>中已经介绍了redis的一些基础知识,以及常用命令的使用,本篇博客将补充一些基础知识以及redis ...

  8. Spring-Boot之Redis基础

    Spring-Boot之Redis基础 准备 Redis下载地址:github.com/MSOpenTech/redis/releases Redis数据库的默认端口号是 6379 开启Redis服务 ...

  9. mongodb,Mysql,redis基础教程

    数据库基础 1:mongodb基础教程 1:pymongo基础教程  2:Mysql基础教程 3:redis基础教程

  10. Redis基础知识点面试手册

    Redis基础知识点面试手册 基础 概述 数据类型 STRING LIST SET HASH ZSET(SORTEDSET) 数据结构 字典 跳跃表 使用场景 会话缓存 缓存 计数器 查找表 消息队列 ...

随机推荐

  1. bzoj4216 Pig

    水题,题目难点大概就是空间限制上了,开longlong会爆,可以开个int数组求前缀和,然后一旦绝对值超过20亿,则将其取模,并记录下当前位置,这样询问时就可以二分这些超过的位置,将其乘以20亿后加上 ...

  2. [php] 使用IDE的正则搜索代码

    ([^a-zA-Z_=$0-9/\[\>])('|"|,)?(\s*)store_banner(\s*)('|"|,)?([^a-zA-Z_=$0-9\/\(\]:]) 用在 ...

  3. form 表单jquery验证插件使用

    第一部分:表单样式 <form action="#" method="post" id="regist">   <tabl ...

  4. Limit the query running time with Resource limit facility (RLF)

    If you need to limit the query(package,plan) running time, but the JCL/JOB TIME parameters doesn't w ...

  5. 鸟哥的linux私房菜之vim

    vim是vi的进阶版本

  6. LCD参数解释及计算【转】

    转自:http://blog.csdn.net/longxiaowu/article/details/24319933 Linux内核的amba lcd控制器使用clcd_panel结构体表示一个LC ...

  7. 用Jquery控制文本框只能输入数字和字母

    用Jquery控制文本框只能输入数字和字母 $.fn.onlyNum = function () { $(this).keypress(function (event) { var eventObj ...

  8. 【Pro ASP.NET MVC 3 Framework】.学习笔记.10.SportsStore:上传图片

    1 扩展数据库 打开表定义,新增两列可空 ) 2 增强领域模型 为Products类添加如下属性 publicstring ImageMimeType { get; set; } 第一个属性不会在界面 ...

  9. 通达OA 指纹考勤机接口 源代码

    通达oa2011已经支持 指纹考勤机  但只限中控iclock660 这款2000大洋的型号 通过本文的开发接口,可以与任意一款指纹机集成, 需求指纹机管理软件能实时保存数据 我这里用的是 中控u16 ...

  10. setw和setfill控制输出间隔

    在C++中,setw(int n)用来控制输出间隔.例如:cout<<'s'<<setw(8)<<'a'<<endl;则在屏幕显示s a //s与a之间 ...