3、 redis数据类型【重点】
redis 使用的是键值对保存数据。(map)
key:全部都是字符串
value:有五种数据类型
Key名:自定义,key名不要过长,否则影响使用效率
Key名不要太短,最好是有意义。
4、 redis命令-String命令【重点】
字符串类型是Redis中最为基础、常用的数据存储类型,字符串在Redis中是二进制安全的,这便意味着该类型存入和获取的数据相同。在Redis中字符串类型的Value最多可以容纳的数据长度是512M。
二进制安全和数据安全是没有关系的。
MySQL-关系型数据库,二进制不安全。【乱码丢失数据】
Redis 二进制数据安全
赋值:
l set key value:设定key持有指定的字符串value,如果该key存在则进行覆盖操作。总是返回”OK”
如果赋予相同的key,新的value会覆盖老的value
取值:
l get key:获取key的value。如果与该key关联的value不是String类型,redis将返回错误信息,因为get命令只能用于获取String value;如果该key不存在,返回(nil)。
删除:
l del key :删除指定key
返回值是数字类型,表示删了几条数据
扩展:
l getset key value:先获取该key的值,然后在设置该key的值。
l incr key:将指定的key的value原子性的递增1.如果该key不存在,其初始值为0,在incr之后其值为1。如果value的值不能转成整型,如hello,该操作将执行失败并返回相应的错误信息。
相当于 ++i
l decr key:将指定的key的value原子性的递减1.如果该key不存在,其初始值为0,在incr之后其值为-1。如果value的值不能转成整型,如hello,该操作将执行失败并返回相应的错误信息。
相当于 –i
Incr和decr 只能对字符串是数字的进行操作。
l append key value:拼凑字符串。如果该key存在,则在原有的value后追加该值;如果该key不存在,则重新创建一个key/value
String使用环境:
主要用于保存json格式的字符串
5、 redis命令-hash(了解)
Redis中的Hash类型可以看成具有String Key和String Value的map容器。所以该类型非常适合于存储值对象的信息。如Username、Password和Age等。如果Hash中包含很少的字段,那么该类型的数据也将仅占用很少的磁盘空间。每一个Hash可以存储4294967295个键值对。
Hash ----à {username:”张三”,age:”18”,sex:”man”}------javaBean
Hash特点:占用的磁盘空间极少
赋值:
l hset key field value:为指定的key设定field/value对(键值对)。
l hmset key field value [field2 value2 …]:设置key中的多个filed/value
取值:
l hmget key filed1 filed2 ….:获取key中的多个filed的值
l hgetall key:获取key中的所有filed-vaule
删除:
l del key :删除整个hash
扩展:
l hkeys key :获得所有的字段
l hvals key:获得所有的value
keys * 查询所有的key
6、 Jedis(java操作redis数据库技术)【重点】
新建项目并加入jar包
Redis有什么命令,Jedis就有什么方法。
防火墙设置:
开放6379端口
/sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEPT
保存配置
/etc/rc.d/init.d/iptables save
查看数据库有name字段了,是二进制数据表现形式,客户端访问时才解码显示中文
Jedis连接池:
抽取连接池工具:
JedisUtils