使用Redis 对问题下的回答按点赞数排序的思路;
1根据问题id查出所有的回答列表;
2吧回答的ids添加到zset1中; key为id,value为赞的数量;(用于点赞排行);
//批量添加 Long add
(
K var1
,
Set
<
ZSetOperations
.
TypedTuple
<
V
>>
var2
)
;
2-2吧回答的ids添加到zset2中;key为id,value为createTime.getLong();(用于创建时间排行);
3对回答进行点赞(取消)的时候
更改zset1中的指定key的value加减1;
4-1发表回答的时候zset1,zset2中增加元素,
//
redisTemplate
.
opsForZSet
()
.
add
(
key
,
4565L
,
13
)
;
4-2删除的时候移除元素;
//
redisTemplate
.
opsForZSet
()
.
remove
(
key
,
4565L
)
5获取排序后的分页数据;结果为回答的ids;
6迭代ids 去每个回答的id对应素材的缓存中取出对象;
@