redis分页查询借助zSet排序,数据存在hSet中。Zset根据score 排序(score可以考虑由查询条件拼接),查询出value(相当于hSet中的key),再从Hset中获取相应的值。zSet 和Hset数据更新很快可以满足需求。

如果hSe的key:val过多(超过6000),可以分成多个桶()。b=key.hashcode%n,可以分为k0到k(n-1)个。分开获取。

直接上代码

1 pom依赖

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>

        </dependency>

2 分页类

package com.redis.demo.util;

import org.springframework.data.redis.core.ZSetOperations;

import java.util.Set;

/**
 * 用于redis 分页
 */
public class RedisPage {
    private long counts;
    private Set<String> set;
    private Set<ZSetOperations.TypedTuple<String>> setSource;

    public long getCounts() {
        return counts;
    }

    public void setCounts(long counts) {
 

更多推荐

Redis实现分页查询