全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Spring Boot中使用Redis做缓存的方法实例

前言

本文主要给大家介绍的是关于Spring Boot中使用Redis做缓存的相关内容,这里有两种方式:

  • 使用注解方式(但是小爷不喜欢)
  • 直接《Spring Boot 使用 Redis》中的redisTemplate

下面来看看详细的介绍:

1、创建UserService

public interface UserService {
 public User findById(int id);
 public User create(User user);
 public User update(User user);
 public void delete(int id);
}

2、创建UserServiceImpl

@Servicepublic class UserServiceImpl implements UserService {
 @Autowired
 private UserRepository userRepository;
 @Autowired
 private UserRedis userRedis;
 //this is a key for redis
 private static final String keyHead = "mysql:get:user:";

 @Override
 public User findById(int id) {
  User user = userRedis.get(keyHead+id);
  if (user == null) {
   user = userRepository.findOne(id);
   if (user != null) {
    userRedis.add(keyHead+id, 30L, user);
   }
  }
  return user;
 }

 @Override
 public User create(User user) {
  User newUser = userRepository.save(user);
  if (newUser != null) {
   userRedis.add(keyHead+newUser.getId(), 30L, newUser);
  }
  return newUser;
 }

 @Override
 public User update(User user) {
  if (user != null) {
   userRedis.delete(keyHead+user.getId());
   userRedis.add(keyHead+user.getId(), 30L, user);
  }
  return userRepository.save(user);
 }

 @Override
 public void delete(int id) {
  userRedis.delete(keyHead+id);
  userRepository.delete(id);
 }
}

3、创建UserController

@RestController
@RequestMapping("/users")
public class UserController {
 @Autowired
 private UserService userService;
 @RequestMapping(value = "/{id}", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
 public Object show(@PathVariable int id) {
  User user = userService.findById(id);
  return user;
 }
}

4、结果,在30分钟内只会执行一次查询

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。


# spring  # boot  # redis  # springboot  # redis缓存  # 详解Spring Boot使用redis实现数据缓存  # SpringBoot使用Redis缓存的实现方法  # 浅谈Spring Boot中Redis缓存还能这么用  # SpringBoot Redis缓存数据实现解析  # SpringBoot 开启Redis缓存及使用方法  # springBoot整合redis做缓存具体操作步骤  # 的是  # 相关内容  # 不喜欢  # 只会  # 给大家  # 来看看  # 这篇文章  # 有两种  # 谢谢大家  # 有疑问  # int  # User  # java  # interface  # public  # findById  # id  # UserServiceImpl  # delete  # implements 


相关文章: 如何制作一个表白网站视频,关于勇敢表白的小标题?  电影网站制作价格表,那些提供免费电影的网站,他们是怎么盈利的?  开心动漫网站制作软件下载,十分开心动画为何停播?  如何高效搭建专业期货交易平台网站?  岳西云建站教程与模板下载_一站式快速建站系统操作指南  网站制作培训多少钱一个月,网站优化seo培训课程有哪些?  广东专业制作网站有哪些,广东省能源集团有限公司官网?  c# Task.ConfigureAwait(true) 在什么场景下是必须的  网站制作免费,什么网站能看正片电影?  实现虚拟支付需哪些建站技术支撑?  制作网站的网址是什么,请问后缀为.com和.com.cn还有.cn的这三种网站是分别是什么类型的网站?  香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧  如何在云主机上快速搭建多站点网站?  教学网站制作软件,学习*后期制作的网站有哪些?  如何在自有机房高效搭建专业网站?  ,制作一个手机app网站要多少钱?  成都网站制作报价公司,成都工业用气开户费用?  阿里云高弹*务器配置方案|支持分布式架构与多节点部署  c++怎么使用类型萃取type_traits_c++ 模板元编程类型判断【方法】  如何制作算命网站,怎么注册算命网站?  如何自定义建站之星网站的导航菜单样式?  如何安全更换建站之星模板并保留数据?  如何在阿里云ECS服务器部署织梦CMS网站?  建站主机核心功能解析:服务器选择与网站搭建流程指南  湖南网站制作公司,湖南上善若水科技有限公司做什么的?  如何优化Golang Web性能_Golang HTTP服务器性能提升方法  宿州网站制作公司兴策,安徽省低保查询网站?  网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?  交易网站制作流程,我想开通一个网站,注册一个交易网址,需要那些手续?  SQL查询语句优化的实用方法总结  香港服务器网站卡顿?如何解决网络延迟与负载问题?  如何在服务器上三步完成建站并提升流量?  如何在西部数码注册域名并快速搭建网站?  如何通过虚拟主机空间快速建站?  建站之星官网登录失败?如何快速解决?  定制建站方案优化指南:企业官网开发与建站费用解析  如何基于云服务器快速搭建网站及云盘系统?  建站之星安装后如何自定义网站颜色与字体?  建站之星CMS建站配置指南:模板选择与SEO优化技巧  网站制作的步骤包括,正确网址格式怎么写?  Java解压缩zip - 解压缩多个文件或文件夹实例  专业网站制作企业网站,如何制作一个企业网站,建设网站的基本步骤有哪些?  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  如何选择高效稳定的ISP建站解决方案?  学校免费自助建站系统:智能生成+拖拽设计+多端适配  建站之星安装步骤有哪些常见问题?  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  XML的“混合内容”是什么 怎么用DTD或XSD定义  网站建设制作需要多少钱费用,自己做一个网站要多少钱,模板一般多少钱?  宝塔新建站点报错如何解决? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。