redistemplate实现点赞相关功能

使用Redis的SET数据结构来存储每个实体的点赞用户ID列表,方便进行点赞数量的计数和用户点赞状态的检查。以下是一个小demo,只提供简单思路。

java 复制代码
@Service
public class LikeService {


    @Autowired
    private RedisTemplate redisTemplate;

    //点赞
    public Long like(String userId,String entityId){
        String key = "like:" + entityId;
        return redisTemplate.opsForSet().add(key,userId) == 1L ? 1L : 0L;
    }

    //取消点赞
    public Long unLike(String userId,String entityId){
        String key = "like:" + entityId;
        return redisTemplate.opsForSet().remove(key,userId) == 1L ? 1L : 0L;
    }

    //查询点赞数量
    public Long isLiked(String userId,String entityId){
        String key = "like:" + entityId;
        return redisTemplate.opsForSet().remove(key,userId) == 1L ? 1L : 0L;
    }

    //查询用户点赞状态
    public Long countLikes(String entityId){
        String key = "like:" + entityId;
        return redisTemplate.opsForSet().size(key).longValue();
    }
}
相关推荐
從南走到北1 分钟前
JAVA无人共享系统无人场馆预约篮球系统源码支持小程序+公众号+APP+H5
java·开发语言·小程序
码智社5 分钟前
Maven 零基础完整教程
java·开发语言·maven
半夜修仙8 分钟前
Spring集成邮箱功能
java·开发语言·spring boot·spring·rabbitmq·github·maven
曾阿伦15 分钟前
Maven 构建工程化指南
java·maven
宠友信息19 分钟前
从重复请求到订单同步看内容社区源码的处理思路
java·spring boot·redis·后端·mysql·spring
带刺的坐椅22 分钟前
用 Solon TeamAgent 落地供应链异常管理与自动补货
java·ai·llm·agent·solon·供应链
潇凝子潇24 分钟前
UnsupportedOperationException
java·前端·数据库
qq_33776320191 小时前
国际期货资管系统开发方案|内外盘交易平台源码授权与二次开发支持
java·c语言·开发语言·c++·c#
不定积分要+C_yyy1 小时前
Java关键字final三种用法、核心特性与高频易错点
java·开发语言
xexpertS3 小时前
队列积压治理:如何避免异步系统出现难以恢复的消息积压
java·开发语言