gpt4 book ai didi

spring - Spring 的 @CachePut 注释是否可以使用 void 返回类型?

转载 作者:行者123 更新时间:2023-12-04 22:47:37 25 4
gpt4 key购买 nike

我正在尝试使用 Ehcache 和 Spring 3.1 内置缓存注释(@Cacheable、@CacheEvict 和 @CachePut)在我的应用程序中实现缓存。

我创建了一个缓存如下:

@Cacheable(value = "userCache", key = "#user.id")
public List<User> getAllUsers() {
...
}

我正在尝试使用 @CachePut 注释使用新值更新此缓存,如下所示:
@CachePut(value = "userCache", key = "#user.id")
public void addUser(User user) {
...
}

但是,新的“用户”并未添加到缓存中。这是因为 void 返回类型吗?

最佳答案

是的,这是因为 void 返回类型。 @CachePut 注释将方法的结果放入缓存中。在您的情况下,没有结果,因此不会将任何内容放入缓存。

更改方法签名以返回用户:

public User addUser(User user) { 
...
}

关于spring - Spring 的 @CachePut 注释是否可以使用 void 返回类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17946426/

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