gpt4 book ai didi

java - SpEL - 错误 : Method cannot be found on type

转载 作者:行者123 更新时间:2023-12-01 09:56:57 28 4
gpt4 key购买 nike

我在尝试实现 spring 缓存时遇到了问题。

我只能提供一个示意性片段(发布真实代码可能会让我被解雇:S)

public class CacheTestServiceImpl {

@Cacheable(value=SOME_STRING_CONSTANT, key="#root.targetClass.createHashCode(#root.args[0])")
public int getID(String userName, String someOtherParam) {
}

public int createHashCode(String userName) {
return 0;
}
}

我不断收到的错误是EL1004E:(pos 18):在CacheTestServiceImpl类型上找不到方法createHashCode(String)。

关于我可能做错了什么有什么建议吗?如果您需要任何进一步的信息,我很乐意提供 ofc :)谢谢

编辑:我只是有一个“绝妙”的想法来搜索错误代码本身并挖出了这个:relevant stack-oerflow question

所以我会检查一下并更新这个问题..

最佳答案

您正在尝试调用静态方法createHashCode,但您的类未声明任何方法。因此,要么使您的方法静态,要么使用 #root.target.createHashCode(#root.args[0]) SpEL 表达式。

引用Spring Cache abstraction reference了解更多信息

关于java - SpEL - 错误 : Method cannot be found on type,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37135971/

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