# Redis 缓存
低代码平台提供了数据缓存功能,基于 Redis 作为缓存存储。可以在函数编排中使用缓存操作,也可以通过java代码来调用。
# 引入依赖
<dependency>
<groupId>net.bingosoft.fuse.oss</groupId>
<artifactId>lcdp-services-redis-cache</artifactId>
<version>${lcdp.version}</version>
</dependency>
# 配置Redis
在application.yml中配置Redis连接信息。
spring:
redis:
host: changeit
port: changeit
password: changeit
# 使用缓存
# 函数编排中使用
在函数编排中,可以使用缓存操作节点,对数据进行缓存操作。

以下是一个简单的例子,使用缓存操作,对数据进行缓存。

# Java代码调用
首先,在 WebAutoConfiguration 中注入 RedisTemplate。
@Bean
@ConditionalOnMissingBean
RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {
RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
redisTemplate.setKeySerializer(RedisSerializer.string());
redisTemplate.setValueSerializer(RedisSerializer.json());
redisTemplate.setHashKeySerializer(RedisSerializer.string());
redisTemplate.setHashValueSerializer(RedisSerializer.json());
redisTemplate.setConnectionFactory(new RedisConnectionFactoryProxy(factory));
redisTemplate.afterPropertiesSet();
return redisTemplate;
}
在业务代码中,可以通过 RedisTemplate 对数据进行缓存操作。
@Autowired
private RedisTemplate<String, Object> redisTemplate;
public void testSet(String key, Object value) {
redisTemplate.opsForValue().set(key, value);
}
public Object testGet(String key) {
return redisTemplate.opsForValue().get(key);
}
public void deleteCache(String key) {
redisTemplate.delete(key);
}
public boolean hasKey(String key) {
return redisTemplate.hasKey(key);
}
更多的用法,请参考 RedisTemplate 的 API 文档。