Caching Strategy
Cache Configuration
@Configuration
@EnableCaching
public class CacheConfiguration {
@Bean
public CacheManager cacheManager() {
SimpleCacheManager manager = new SimpleCacheManager();
manager.setCaches(Arrays.asList(
new ConcurrentMapCache("userOrgAccess"),
new ConcurrentMapCache("userPersonAccess")
));
return manager;
}
}
Cached Methods
@Cacheable(
value = "userOrgAccess",
key = "#username + '-' + #accessLevel"
)
Set<Long> getUserOrgIds(String username, AccessLevel accessLevel)
@Cacheable(
value = "userPersonAccess",
key = "#username + '-' + #accessLevel"
)
Set<Long> getUserPersonIds(String username, AccessLevel accessLevel)