Spring 4 @cacheable 注释:如何为自定义密钥生成器添加属性?
Spring 4 @cacheable annotation : how add properties for custom key generator?
在我的 Java 项目中,我将 spring 迁移到 -> 4.3.4,并将 ehcache-spring-annotation 迁移到 http://www.springframework.org/schema/cache。
我在定义缓存 customkeygenerator 的属性时遇到问题:
@Cacheable(value = "cacheDAO", keyGenerator = @KeyGenerator(name = "CacheKeyGenerator",
properties = { @Property(name = "useReflection", value = "true"),
@Property(name = "checkforCycles", value = "true"),
@Property(name = "includeMethod", value = "false") })
似乎无法通过 @keyGenerator 注释定义 useReflection、checkForCycles 或 includeMethod。
你能帮我配置一下吗?它如何与 spring 4 一起工作?
如果您不明白我的要求,请告诉我。
谢谢!
根据 the documentation 看来内联似乎是不可能的。但是,从相同的密钥生成器配置特定的 beans 但将不同的 属性 值映射到不同的 bean 名称是非常简单的。然后您在 @Cacheable
注释中引用了确切的那个。
在我的 Java 项目中,我将 spring 迁移到 -> 4.3.4,并将 ehcache-spring-annotation 迁移到 http://www.springframework.org/schema/cache。
我在定义缓存 customkeygenerator 的属性时遇到问题:
@Cacheable(value = "cacheDAO", keyGenerator = @KeyGenerator(name = "CacheKeyGenerator",
properties = { @Property(name = "useReflection", value = "true"),
@Property(name = "checkforCycles", value = "true"),
@Property(name = "includeMethod", value = "false") })
似乎无法通过 @keyGenerator 注释定义 useReflection、checkForCycles 或 includeMethod。
你能帮我配置一下吗?它如何与 spring 4 一起工作? 如果您不明白我的要求,请告诉我。
谢谢!
根据 the documentation 看来内联似乎是不可能的。但是,从相同的密钥生成器配置特定的 beans 但将不同的 属性 值映射到不同的 bean 名称是非常简单的。然后您在 @Cacheable
注释中引用了确切的那个。