gpt4 book ai didi

java - 当spring调用get(Object o, Class aClass)函数时使用@Cacheable

转载 作者:行者123 更新时间:2023-11-30 05:39:02 24 4
gpt4 key购买 nike

我在 springboot 中使用 @Cacheable 并实现 Cache 接口(interface),覆盖以下函数:

 public String getName()
public Object getNativeCache()
public ValueWrapper get(Object key)
public void put(Object key, Object value)
public ValueWrapper putIfAbsent(Object key, Object value)
public void evict(Object key)
public void clear()

但我让其他两个函数返回 null

public <T> T get(Object o, Class<T> aClass)
public <T> T get(Object o, Callable<T> callable)

现在@Cacheable工作正常,但是当spring调用这两个函数时,可以让它们返回null吗?

最佳答案

是的,这是一个问题。您未能实现该接口(interface)。这违反了https://en.wikipedia.org/wiki/Liskov_substitution_principle (“SOLID”中的“L”)。

它为后续开发提供了一个陷阱,接口(interface)的使用者必须知道在底层实现上要避免什么。

简而言之,您未能满足接口(interface)的约定。

关于java - 当spring调用get(Object o, Class<T> aClass)函数时使用@Cacheable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56051116/

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