代码拉取完成,页面将自动刷新
[用户指南]
HP-SOA 的 hp-soa-starter-data-redis 模块提供了基于Redisson的Redis接入功能,支持同时访问多个Redis实例。
预定义 Redis Template(参考:SoaDefaultRedisConfig):
hp-soa-starter-data-redis 提供了默认 Redis Cache Manager 用于支持 Spring Data 缓存注解,预定义以下 Cache Name(参考:SoaDefaultRedisConfig):
<dependencies>
<!-- 引用 hp-soa-starter-data-redis-->
<dependency>
<groupId>io.github.hpsocket</groupId>
<artifactId>hp-soa-starter-data-redis</artifactId>
</dependency>
</dependencies>
hp-soa-starter-data-redis 内置支持连接3个Redis实例:
配置示例参考redis.yml,详细配置项目参考Redisson配置文档。
@Component
public class MyService
{
/* 注入 Redis Template Bean */
@Autowired
@Qualifier(SoaDefaultRedisConfig.redisTemplateBeanName)
private RedisTemplate<String, ?> redisTemplate;
/* 注入 Redisson Client Bean */
@Autowired
@Qualifier(SoaDefaultRedisConfig.redissonClientBeanName)
private RedissonClient redissonClient;
}
@Service
public class UserService
{
@Resource
private UserMapper userMapper;
/* 查询结果写入缓存,下次查询直接从缓存中取出 */
@Cacheable(cacheNames = SoaDefaultRedisConfig.redisCacheManagerBeanName, cacheNames = "30m", key = "#id", unless = "#result != null")
public User selectByPrimaryKey(String id)
{
return userMapper.selectByPrimaryKey(id);
}
/* 创建结果写入缓存 */
@CachePut(value = SoaDefaultRedisConfig.redisCacheManagerBeanName, cacheNames = "30m", key = "#user.getId()")
public User save(User user)
{
userMapper.saveUser(user);
return user;
}
/* 更新结果写入缓存 */
@CachePut(value = SoaDefaultRedisConfig.redisCacheManagerBeanName, cacheNames = "30m", key = "#user.getId()")
public User update(User user)
{
userMapper.updateBySelective(user);
return user;
}
/* 清除缓存 */
@CacheEvict(value = SoaDefaultRedisConfig.redisCacheManagerBeanName, cacheNames = "30m", key = "#id")
public void delete(String id)
{
userMapper.delete(id);
}
}
}
[用户指南]
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。