java实现点赞的原理_JavaWeb中点赞功能的实现及完整实例

本文详细介绍了JavaWeb中实现点赞功能的原理,包括功能描述、点赞表结构设计以及核心控制器代码分析。使用SpringBoot、Spring Data JPA和MySQL实现,通过行级锁处理并发控制,确保用户对同一文章只能点赞一次。在高并发场景下,建议使用Redis等缓存数据库提升性能。
摘要由CSDN通过智能技术生成

实现原理

1、功能描述:一个用户对同一文章只能点赞一次,第二次就是取消赞

2、建立一个点赞表great,字段有文章id(aid),点赞用户id(uid)

3、当有用户进行点赞行为时,使用aid和uid搜索点赞表。

若有该记录,则表示用户已经点过赞,本次点击是取消点赞行为,故删除great表中的该条记录,同时将该文章的点赞数减1。

若无该记录,则表示用户是要点赞,故在great表中添加该记录,同时该文章的点赞数加1。

核心代码分析

核心控制器basecontroller:

@controller

public class basecontroller {

private final greatrepository greatrepository;

private final articlerepository articlerepository;

//spring团队推荐的做法是用构造器来引入依赖,而不是直接使用@autowired引入

@autowired

public basecontroller(greatrepository greatrepository,

articlerepository articlerepository) {

this.greatrepository = greatrepository;

this.articlerepository=articlerepository;

}

@requestmapping({"/","/index

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值