本文共 3117 字,大约阅读时间需要 10 分钟。
redis客户端采用lettuce
com.alicp.jetcache jetcache-starter-redis-lettuce 2.6.0
com.alicp.jetcache jetcache-starter-redis-lettuce org.projectlombok lombok org.springframework.boot spring-boot-starter-web
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:端口/库
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@RestControllerpublic 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(); }}
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@Servicepublic class UserServiceImpl { /** * 定义一个是String类型的远程缓存 */ @CreateCache(name ="ct.username", expire = 120, cacheType = CacheType.REMOTE) private CacheuserNameCache; /** * 定义一个是User对象的二级缓存(本地+远程) */ @CreateCache(name ="ct.user", localExpire = 60, localLimit = 100, expire = 120, cacheType = CacheType.BOTH) private Cache userCache;}
同《》
同《》
运行AppRedis启动,浏览器输入:
http://localhost:8088/getUser
输出:
中华人名工程国
立即查看,db0(3),过段时间(超过expire time),db(1)
转载地址:http://mlmdi.baihongyu.com/