版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
springboot整合redis的入门
- 相关依赖
<!-- 配置使用redis启动器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
- 配置文件
#Redis
spring.redis.host=129.00.00.000
spring.redis.port=6379
- 举个栗子
@Service
public class PmsSkuInfoServiceImpl extends ServiceImpl<PmsSkuInfoMapper, PmsSkuInfo> implements PmsSkuInfoService {
@Autowired
PmsSkuImageService pmsSkuImageService;
@Autowired
PmsSkuAttrValueService pmsSkuAttrValueService;
@Autowired
PmsSkuSaleAttrValueService pmsSkuSaleAttrValueService;
//弄进来
@Autowired
private RedisTemplate<String,String> redisTemplate;
@Override
public PmsSkuInfoVo getSkuGroupById(String skuId) {
//1.从redis中获取数据
String s = redisTemplate.boundValueOps("sku:" + skuId + ":item").get();
//2.如果获取不到,从数据库中获取数据
if (StringUtils.isEmpty(s)){
PmsSkuInfoVo vo = new PmsSkuInfoVo();
PmsSkuInfo pmsSkuInfo = baseMapper.selectById(skuId);
BeanUtils.copyProperties(pmsSkuInfo,vo);
List<PmsSkuImage> list = pmsSkuImageService.list(new QueryWrapper<PmsSkuImage>()
.lambda().eq(PmsSkuImage::getSkuId, skuId));
vo.setSkuImageList(list);
//将转换成的json字符串放入到redis中去
redisTemplate.boundValueOps("sku:"+skuId+":item").set(JSON.toJSONString(vo));
return vo;
}
PmsSkuInfoVo vo= JSON.parseObject(s, PmsSkuInfoVo.class);
return vo;
}