在Java中如何使用Redis进行数据存储

Redis 简介

  redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统。它支持存储的value类型相对更多,包括string、list、set、zset和hash。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作。在此基础上,redis支持各种不同方式的排序。Redis数据都是缓存在计算机内存中,并且会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件。Reids是单线程的,不适合保存的数据量过大。

Redis在Linux下的安装

  1. 下载源码,解压缩后编译源码。
    wget http://download.redis.io/releases/redis-2.8.3.tar.gz
    tar -zxvf redis-3.0.0.tar.gz –c /usr/ (放到usr目录下)
    cd redis-3.0.0(到redis-3.0.0目录下)
    mkdir 6379(把实例放在6379下)
    make install PREFIX=/usr/ redis-3.0.0/6379/

  2. 编译完成后,在Src目录下,有四个可执行文件redis-server、redis-benchmark、redis-cli和redis.conf。然后拷贝到一个目录下。
    cd 6379(到6379文件下)
    cd bin(到bin下)
    cp redis.conf 6379/bin/(复制到6379/bin下)
    vim redis.conf(daemonize 修改成 yes)
    mkdir /usr/redis(新建文件夹)

  3. 启动Redis服务。
    redis-server redis.conf

  4. 然后用客户端测试一下是否启动成功。
    redis-cli (进入程序)ctrl+c(退出程序)
    redis> set foo bar
    OK
    redis> get foo
    “bar”
    删除文件命令:rm –rf 文件名

Redis 的五中数据类型

第一种 (String)
String:key-value(做缓存)
命令不区分大小写,key区分大小写
set productId 1000 设置值
get productId 获取value
incr productId 自增
decr productId 自减
keys * 获取所有key

第二种 key – HashMap(key-value)
Hash:key-fields-values(做缓存)
相当于一个key 对应一个map
Map中 还有 key-value
hset user1 age 25 设置key的key1值
hget user1 age 获取key的key1值
hgetall user1 获取key下所有的key和value
hincrby user1 age n 以n自增

第三种(LinkedList)
List:有顺序 可重复
lpush list1 a b c d 设置值(从上到下插入值,即从左到右)
lrange list1 0 -1 获取所有值
rpush lists 1 2 3 4设置值(从下到上插入值,即从右到左)
lrange lists 0 -1 获取所有值
lpop list1 删除集合的第一个元素(最上面一个,即左边第一个)并且返回
rpop list1删除集合的最后一个元素并且返回
第四种 HashSet
Set:无顺序,不能重复
sadd set1 a b c c d
smembers set1 查看集合数据
srem set1 a 移除
第五种SortedSet
SortedSet(zset):有顺序,不能重复
zadd zset1 2 a 5 b 6 c 7 d
在设置数据的时候需要给数据加上一个分数
2 a 表示 a 是2分
5 b 表示 b 是5分

Zrange zset1 0 -1 正序查看所有数据
Zrem zset1 a 删除数据a
Zrevrange zset1 0 -1倒序查看所有数据
zrange zset1 0 -1 withscores显示分数
Zrevrange zset1 0 -1 withscores倒序显示分数

Redis 与spring的整合


<!-- redis连接池 -->
	<bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig" >
		<property name="maxTotal" value="100" ></property>
	</bean>
	
	<bean id="jedisPool" class="redis.clients.jedis.JedisPool" >
		<constructor-arg index="0" ref="jedisPoolConfig" />
		<constructor-arg index="1" value="192.168.8.129" type="java.lang.String" />
		<constructor-arg index="2" value="6379" />
	</bean>

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值