使用相同的redis缓存来存储不同类型的对象是否可能而且正确?我知道它支持多个ds。在我的场景中,对象将是用户定义的对象。此外,将有两种不同的方法,将填补相同的redis缓存与不同类型的密钥一样,一个是填补 CustomerInfo
反对 customerId
另一个是用 AccountInfo
反对 AccountId
.
cacheconfig.class类:
@Configuration
public class CacheConfig extends AbstractCloudConfig {
@Autowired
Environment env;
@Bean
public RedisConnectionFactory brRedisFactory() {
return connectionFactory().redisConnectionFactory(env.getProperty("redis-cache"));
}
@Bean
public RedisTemplate<String, Object> brRedisTemplate() {
RedisTemplate<String, Object> redisTemplate = new RedisTemplate<String, Object>();
redisTemplate.setConnectionFactory(brRedisFactory());
return redisTemplate;
}
@Bean(name = "myCacheMngr")
public CacheManager cacheManager() {
RedisCacheManager cacheManager = new RedisCacheManager(brRedisTemplate());
cacheManager.setUsePrefix(true);
cacheManager.setTransactionAware(true);
return cacheManager;
}
}
在redis缓存中填充客户数据的方法。将有类似的方法来填充redis缓存与帐户详细信息对键'accountid'。
@Cacheable(value="redis-cache",key ="#customerId")
public FinancialPlanningDTO retriveCustomerdetails( String customerId, String modelId, String requestId) throws COException {
CustomerInfo csDTO;
try {
csDTO = csDTOAdapterImpl.
getCustomerDetails(customerId);
} catch (Exception e) {
e.printStackTrace();
}
return financialPlanningDTO;
}
暂无答案!
目前还没有任何答案,快来回答吧!