当前位置: 首页 > 知识库问答 >
问题:

如何注入com.github.本曼内斯。咖啡因隐藏物通过Spring缓存?

赵明亮
2023-03-14

这就是我的缓存的实例化方式:

return Caffeine.newBuilder()
                .maximumSize(10)
                .expireAfterWrite(15, TimeUnit.MINUTES)
                .build()

如何配置Spring以执行依赖注入?

<bean id="matchedDFUCache" class="com.github.benmanes.caffeine.cache.Caffeine" factory-method="newBuilder"></bean>

给我这个错误:

[coral:launch] org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'realTimeForecastFactory': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'matchedDFUCache' is expected to be of type 'com.github.benmanes.caffeine.cache.Cache' but was actually of type 'com.github.benmanes.caffeine.cache.Caffeine'

这是源文件:https://github.com/ben-manes/caffeine/blob/master/caffeine/src/main/java/com/github/benmanes/caffeine/cache/Caffeine.java

共有1个答案

白学
2023-03-14
        <bean id="caffeineBuilder" class="com.github.benmanes.caffeine.cache.Caffeine" factory-method="newBuilder">
        </bean>
        <bean id="matchedDFUCache" factory-bean="caffeineBuilder" factory-method="build">
        </bean>
 类似资料:
  • 我已经使用咖啡因缓存设置了一个场景,但我无法让它工作,当参数相同时,总是调用真正的方法。这是我的配置: 波姆。xml CacheManager的配置类 然后是具有可缓存方法的类: 我还尝试将缓存名称添加到可缓存批注: 并将移动到Spring Boot主应用程序类。 真正的方法总是被调用的。 你知道我做错了什么吗? 谢谢

  • 我试图使用Spring Boot与咖啡因和一些注释函数。在我们的测试中,对控制器endpoint的异步调用出现了一些问题,这些问题似乎与我们使用非异步缓存的事实有关。 在做一些研究时,我看到了很多使用Caffeine手动使用的例子,但是在和Spring Boot和注释中找不到任何东西。看起来和具有非常不同的API。是否可以异步使用默认的Spring Boot? 谢谢

  • 我目前正在学习咖啡因,总体来说我对Spring还不熟悉。我一直在尝试用咖啡因实现缓存;然而,我发现自己遇到了几个问题。 我看到了两种配置咖啡因缓存的方法。 首先是Java类: 第二是在应用范围内。财产: 我想问一下,这两者之间有什么不同之处吗?我需要课程和应用程序吗。属性配置,还是仅其中一个?此外,在Java类实现中,cacheManager是仅应用于名为“example”的缓存,还是应用于每个缓

  • 我正在使用咖啡因缓存,并寻找一种方法来更新缓存中的值,而不更改其过期时间。 场景是我使用缓存来加速数据加载。数据更改延迟5秒是可以接受的,而我希望返回速度很快。此外,我希望这些缓存在第一次命中1天后过期,以避免不必要的内存使用。 因此,我希望每个缓存的密钥持续一天,但其值每5秒更新一次。 方法似乎已关闭,但刷新持续时间后的第一个返回值仍然是旧值。这对我来说并不理想,因为两次点击之间的持续时间可能是

  • 我在java Play Framework作业中使用Caffeine cache实现来缓存传出的http请求,我看到,尽管缓存已经启动并运行,但我的服务仍然每次都访问外部服务器,而不是返回缓存中的值。我看到记录在日志中的键总是相同的。 所以我看到没有设置,所以这可能意味着缓存立即过期。但我仍然不知道如何在配置中设置它 我没有更改我的java代码,如果我需要这样做,我找不到任何示例,或者我只应该有一

  • 我试图将隐藏字段的值输入到Testcafe中的文本框中,理想的方式是模拟键入。有办法吗?每次我试图通过javascript来实现它时,它都会抛出一个javascript错误。 本质上,我正在测试一个相当标准的网络应用程序——我填写一个表单,一页一页地去,然后必须输入一个保存在页面上隐藏的html输入字段中的值。老实说,我不知道从哪里开始——每次我试图通过“运行测试咖啡馆脚本”使用javascrip