知识复习
1.如何启动使用??
2.五种数据类型如何操作??
通用命令的存取是啥??
keys*:
type key:
del key:
3.内存中会消失,如何让他持久化?
RDB&AOF
RDB:(默认方式)推荐(间隔一段时间,检测key的变化,然后持久化 性能影响小)
AOF;来一个记住一个
怎么用他的持久化机制
(1)编辑redis.windows.conf文件:
save 900 1
save 300 10
save 60 10000
他们的意思要知道!
(2)重新启动redis,并进入到目录配置文件名称redis-server.exe redis .windows.conf
Jedis操作java程序:
三行代码:
//获取连接
Jedis jedis=new Jedis("localhost",6379);
//如果使用空参构造 默认是localhost 和 6379
//操作
jedis.set("user","jiji"); //字符串
jedis.setex("code",20,"hehe"); //设置存储时间 20s后自动删除
//关闭 6379
jedis.close();
jedis.setex(“code”,20,“hehe”); //设置存储时间 20s后自动删除
哈希:
jedis.hset("io", "name","nihao");
jedis.hset("io", "gender","male");
// String s = jedis.hget("io", "name");
Map<String, String> io = jedis.hgetAll("io");
for(String a:io.keySet()){
System.out.println(a+" "+io.get(a));
}
Jedis连接池
host:localhost
port:6379
maxTotal:50
maxIdle:10
是三个参数,不能直接传prop
static{
Properties prop=new Properties();
try {
prop.load(JedisUtil.class.getClassLoader().getResourceAsStream("jedis.properties"));
JedisPoolConfig config=new JedisPoolConfig();
config.setMaxTotal(Integer.parseInt(prop.getProperty("maxTotal")));
config.setMaxTotal(Integer.parseInt(prop.getProperty("maxIdle")));
jedis=new JedisPool(config,prop.getProperty("host"), Integer.parseInt(prop.getProperty("port")));
} catch (IOException e) {
e.printStackTrace();
}
redis缓存案例
需求:下拉列表选择省份,与后台实现数据交互。注意;数据库中放的是省份的信息.
技术选型:数据库redis+ajax+json+servlet
但是查询数据库太耗费性能了 所以使用redis缓存优化
那么怎么个优化法?
如何让他进行缓存数据?
优化部分:
数据查询出来后,存入redis中,返回数据。(有,直接返回数据。没有,缓存)