我使用了基于弹簧声明性注释的缓存方法。以下是我的使用方法,
@Cacheable(value = "users", key = "T(org.mifosplatform.infrastructure.core.service.ThreadLocalContextUtil).getTenant().getName().concat(#username)")
public UserDetails loadUserByUsername(final String username) throws UsernameNotFoundException, DataAccessException { //method body }
这个注释看起来很长。我尝试使用自定义键生成器,但问题是当我在注释中定义键时,自定义键生成器不会被调用。
所以现在我正在尝试使用自定义弹簧注释作为解决方法。但我无法找到一个好的参考来开始。基本上我需要向密钥(租户标识符)添加一个上下文感知参数。
任何帮助将不胜感激。