在写一个博客项目,想加一个限制同一ip重复刷浏览量的功能,要怎么去实现呢?
另外浏览量放入redis虽然实现了,但是感觉写的也不太好,能不能给点建议优化一下。
@Override
public Result findArticleById(Long id) {
Article article=this.articleMapper.selectById(id);
ArticleVo articleVo=copy(article,true,true,true,true);
//使用redis实现增加阅读次数
String key="mszlu"+article.getId();
if (redisTemplate.opsForValue().get(key)==null) {
redisTemplate.boundValueOps(key).increment(article.getViewCounts()+1);
}else {
redisTemplate.boundValueOps(key).increment(1);
}
//threadService.updateArticleViewCount(articleMapper,article);
articleVo.setViewCounts(Integer.valueOf(redisTemplate.opsForValue().get(key)));
return Result.success(articleVo);
}