gpt4 book ai didi

java - Spring @CachePut 用两个键放置相同的值

转载 作者:行者123 更新时间:2023-12-02 09:07:05 26 4
gpt4 key购买 nike

我使用 Spring 以及使用 @Cacheable@CachePut 注释的内置缓存。

我的 @Service 中有 2 个方法,第一个用于将值保存在数据库中,第二个用于从数据库获取值。它们都使用缓存。

@CachePut(key = "#code")
MyObject saveMyObject(MyObject o, String code) {
return dao.save(o);
}

@Cacheable(key = "#code")
MyObject getMyObject(String code) {
return dao.getMyObject(code);
}

在保存对象时,我想将其放入另一个缓存中,例如

@CachePut(key = "'TMP_'.concat(#code)")

但我无法在 saveMyObject 方法上使用两个 @CachePut 注释。

我应该做什么?

最佳答案

您可以使用 org.springframework.cache.annotation.Caching 注释对 CachePut 进行分组:

@Caching( put = {
@CachePut(key = "#code"),
@CachePut(key = "'TMP_'.concat(#code)")
})
MyObject saveMyObject(MyObject o, String code) {
return dao.save(o);
}

关于java - Spring @CachePut 用两个键放置相同的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41767335/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com