JavaWeb redis缓存

redis是一款高性能的NOSQL系列的非关系型数据库,以key:value的形式存放在内存上。

应用场景:
redis的应用场景
• 缓存(数据查询、短连接、新闻内容、商品内容等等)
• 聊天室的在线好友列表
• 任务队列。(秒杀、抢购、12306等等)
• 应用排行榜
• 网站访问统计
• 数据过期处理(可以精确到毫秒
• 分布式集群架构中的session分

redis的数据结构:

  • redis存储的是:key,value格式的数据,其中key都是字符串,value有5种不同的数据结构
  • value的数据结构:
  1. 字符串类型 string
  2. 哈希类型 hash : map格式
  3. 列表类型 list : linkedlist格式。支持重复元素
  4. 集合类型 set : 不允许重复元素
  5. 有序集合类型 sortedset:不允许重复元素,且元素有顺序

每种数据结构的命令不太相同,需自行查阅。

持久化

  1. redis是一个内存数据库,当redis服务器重启,获取电脑重启,数据会丢失,我们可以将redis内存中的数据
    持久化保存到硬盘的文件中。

2. redis持久化机制:

  1. RDB:默认方式,不需要进行配置,默认就使用这种机制
  • 在一定的间隔时间中,检测key的变化情况,然后持久化数据
  1. 编辑redis.windwos.conf文件
    after 900 sec (15 min) if at least 1 key changed
    save 900 1
    after 300 sec (5 min) if at least 10 keys changed
    save 300 10
    after 60 sec if at least 10000 keys changed
    save 60 10000

Jedis ->用JAVA代码控制redis(与JDBC功能类似)

调用方法:getResource()方法获取Jedis连接

//0.创建一个配置对象
JedisPoolConfig config = new JedisPoolConfig();
config.setMaxTotal(50);
config.setMaxIdle(10);
//1.创建Jedis连接池对象
JedisPool jedisPool = new JedisPool(config,"localhost",6379);
//2.获取连接
Jedis jedis = jedisPool.getResource();
//3. 使用
jedis.set("hehe","heihei");
//4. 关闭 归还到连接池中
jedis.close();

案例:涉及json转换,redis查询,sql查询


案例需求:

  1. 提供index.html页面,页面中有一个省份 下拉列表
  2. 当 页面加载完成后 发送ajax请求,加载所有省份

代码结构:
在这里插入图片描述

其中JDBCUtils和相应的dao都比较熟悉了,所以项目的后端部分主要实现就是编写JedisPoolUtils和Service的逻辑。
Dao

public class ProvinceDaoImpl implements ProvinceDao {
   

    //1.定义成员变量 JDBCtemplement
    private JdbcTemplate template = new JdbcTemplate(JDBCUtils.getDataSource());


    @Override
    public List<Province> findAll() {
   
        //1.定义sql
        String sql = "select * from province";
        //2.执行sql
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值