Redis
1、什么是Redis
完全开源免费的,遵守BSD协议,是一个高性能的键值数据库。是当前最热门的的的NoSql数据库之一
2、为什么要使用Redis数据库?
简单,块,在高并发,高负载的网站中必须考虑redis数据库,比如在某网站中订票,会提示缓存多长时间,过了固定时间之后就会自动取消订单,为什么要这样做?都存储在数据库中会产生大量的sql语句,会对服务器带来巨大的压力,所以我们经常把经常查询的数据放在redis缓存中
3、安装Redis客户端
首先需要安装如下两个客户端
安装完成后启动Redis客户端,第一步需要创建一个服务器,我们连接本地的服务器即可
创建完本地服务器之后的界面,有十六个库就是正确的
4、Redis所支持的数据类型
String Hash list set zset
1、String
存储:set key value 获取:get key 删除:del key 查询所有的key:keys *
自增:incr key 自减:decr key
:2、Hash
相当于一个key对应一个Map,Map中还有一系列的key-value键值对
存储:hset key field value 获取:hget key field 查看某个key对应的map里的所有key :hkeys key
查看某个key对应的map里面的所有value值:hvals key
查看所有信息:hgetall key
3、List类型
存储数据:lpush list val1 val2 val3(从左边进行添加,倒过来放置)
rpush list val1 val2 val3(从右边进行添加,正向放置)
获取数据:lpop list(从左边取,取完就消失)
rpop list(从右边取,取完就消失)
查看List:lrange key 0 2(索引值,查看部分内容)
lrange key 0 -1(查看所有元素)
4、Set类型(存储无序不重复的数据,出现重复就覆盖)
存储数据:sadd key val1 val2 val3
获取数据:srandmember s1(随机获取里面的一个数据)
查看Set: smembers key
差集 sdiff key1 key2
交集 sinter key1 key2
并集 sunion key1 key2
5、key命令
设置存储数据的有效时长:expire key 时间(秒)
剩余时长:ttl key
清除过期时间:persist key
5、Redis在项目中的使用
单纯的在java中使用redis 需要导入两个jar包,commons-pool2-2.4.2.jar和jedis-2.9.0.jar
如果每一次调用都要生成一个连接,这样大大的降低了开发效率,所以也可以采用连接池的方式来管理,
如果不同类型赋值,取值,一个一个取new的话非常麻烦,所以采用一个工具类,囊括所有方法
6、将Redis整合到Spring里面去
首先第一步需要在spring的配置文件中配置一下redis
在service中注入那个工具类,通过工具类来调用对应类型的方法