springboot整合redis-lettuce
2021/10/18 2:15:36
本文主要是介绍springboot整合redis-lettuce,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
0、前言
redis客户端采用lettuce
1、先上代码目录
2、pom文件
1)父pom
<dependency> <groupId>com.alicp.jetcache</groupId> <artifactId>jetcache-starter-redis-lettuce</artifactId> <version>2.6.0</version> </dependency>
2)子模块pom
<dependency> <groupId>com.alicp.jetcache</groupId> <artifactId>jetcache-starter-redis-lettuce</artifactId> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
3、application.yml
jetcache: statIntervalMinutes: 1 #统计间隔 areaInCacheName: false local: default: #默认area type: caffeine keyConvertor: fastjson remote: default: type: redis.lettuce #使用lettuce keyConvertor: fastjson valueEncoder: java valueDecoder: java poolConfig: minIdle: 1 maxIdle: 50 maxTotal: 1000 maxWait: 1000 # uri: ['redis://password@192.168.126.131:6379/0','redis://password@192.168.126.132:6379/0','redis://password@192.168.126.133:6379/0'] uri: - redis://192.168.126.133:6379 #redis://密码@IP:端口/库
4、UserController
package com.ct.redis.lettuce.controller; import com.ct.redis.lettuce.entity.UserEntity; import com.ct.redis.lettuce.service.impl.UserServiceImpl; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; /** * @Author LaoHa * @Date 2021/6/12 */ @Slf4j @RestController public class UserController { @Autowired UserServiceImpl userService; @GetMapping(value = "/getUser") public String getUserInfo() { userService.getUserNameCache().put("123", "中华人民共和国万岁!"); log.info("userNameCache : " + userService.getUserNameCache().get("123")); UserEntity user = new UserEntity(); user.setName(userService.getUserNameCache().get("123")); userService.getUserCache().put("1234", user); log.info("userCache: " + userService.getUserCache().get("1234").getName()); return userService.getUserCache().get("1234").getName(); } }
5、UserService
package com.ct.redis.lettuce.service.impl; import com.alicp.jetcache.Cache; import com.alicp.jetcache.anno.CacheType; import com.alicp.jetcache.anno.CreateCache; import com.ct.redis.lettuce.entity.UserEntity; import lombok.Data; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; /** * @Author LaoHa * @Date 2021/6/12 */ @Data @Slf4j @Service public class UserServiceImpl { /** * 定义一个是String类型的远程缓存 */ @CreateCache(name ="ct.username", expire = 120, cacheType = CacheType.REMOTE) private Cache<String, String> userNameCache; /** * 定义一个是User对象的二级缓存(本地+远程) */ @CreateCache(name ="ct.user", localExpire = 60, localLimit = 100, expire = 120, cacheType = CacheType.BOTH) private Cache<String, UserEntity> userCache; }
6、UserEntity
同《springboot整合redis》
7、AppRedis
同《springboot整合redis》
8、运行测试
运行AppRedis启动,浏览器输入:
http://localhost:8088/getUser
输出:
中华人名工程国
2)Redis Desktop Manager
立即查看,db0(3),过段时间(超过expire time),db(1)
这篇关于springboot整合redis-lettuce的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-14动态路由项目实战:从入门到上手
- 2024-11-14函数组件项目实战:从入门到简单应用
- 2024-11-14获取参数项目实战:新手教程与案例分析
- 2024-11-14可视化开发项目实战:新手入门教程
- 2024-11-14可视化图表项目实战:从入门到实践
- 2024-11-14路由懒加载项目实战:新手入门教程
- 2024-11-14路由嵌套项目实战:新手入门教程
- 2024-11-14全栈低代码开发项目实战:新手入门指南
- 2024-11-14全栈项目实战:新手入门教程
- 2024-11-14useRequest教程:新手快速入门指南