Java 没有SpringBoot的Spring缓存集成

Java 没有SpringBoot的Spring缓存集成,java,spring,caffeine-cache,Java,Spring,Caffeine Cache,我想在我的Spring5应用程序中集成咖啡因缓存。我知道我需要咖啡馆经理,但我没有这门课。我找到的唯一方法是将SpringBoot Starter缓存包添加到pom中,但我不想使用SpringBoot 我的pom中有今年春天的套餐: <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <

我想在我的Spring5应用程序中集成咖啡因缓存。我知道我需要咖啡馆经理,但我没有这门课。我找到的唯一方法是将SpringBoot Starter缓存包添加到pom中,但我不想使用SpringBoot

我的pom中有今年春天的套餐:

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-web</artifactId>
    <version>5.2.8.RELEASE</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.springframework/spring-core -->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>5.2.8.RELEASE</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>5.2.8.RELEASE</version>
</dependency>

    <!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>5.2.8.RELEASE</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.springframework.security/spring-security-web -->
<dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-web</artifactId>
    <version>5.3.3.RELEASE</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.springframework.security/spring-security-config -->
<dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-config</artifactId>
    <version>5.3.3.RELEASE</version>
</dependency>

主spring缓存实现位于spring上下文依赖项中。您应该只设置该缓存管理器并使用@Cacheable注释。 有关示例,请参见: 如果您需要连接缓存和spring缓存机制的代码示例,请告诉我

CaffeineCacheManager配置:

CaffeineCacheManager位于

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context-support</artifactId>
    <version>5.2.8.RELEASE</version>
</dependency>

org.springframework
spring上下文支持
5.2.8.1发布
咖啡因依赖:

<dependency>
    <groupId>com.github.ben-manes.caffeine</groupId>
    <artifactId>caffeine</artifactId>
    <version>2.8.8</version>
</dependency>

com.github.ben-manes.caffine
咖啡因
2.8.8
配置:

@Configuration
@EnableCaching
public class Config {
    @Bean
    public Caffeine<Object, Object> caffeineConfig() {
        return Caffeine.newBuilder().expireAfterWrite(60, TimeUnit.MINUTES);
    }
    @Bean
    public CacheManager cacheManager(Caffeine<Object, Object> caffeine) {
        CaffeineCacheManager caffeineCacheManager = new CaffeineCacheManager();
        caffeineCacheManager.setCaffeine(caffeine);
        return caffeineCacheManager;
    }
}
@配置
@启用缓存
公共类配置{
@豆子
公共咖啡因咖啡配置(){
return.newBuilder().expireAfterWrite(60,TimeUnit.MINUTES);
}
@豆子
公共缓存管理器缓存管理器(咖啡因){
CaffeineCacheManager CaffeineCacheManager=新的CaffeineCacheManager();
咖啡因咖啡经理。设置咖啡因(咖啡因);
返回咖啡馆经理;
}
}

主spring缓存实现位于spring上下文依赖项中。您应该只设置该缓存管理器并使用@Cacheable注释。 有关示例,请参见: 如果您需要连接缓存和spring缓存机制的代码示例,请告诉我

CaffeineCacheManager配置:

CaffeineCacheManager位于

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context-support</artifactId>
    <version>5.2.8.RELEASE</version>
</dependency>

org.springframework
spring上下文支持
5.2.8.1发布
咖啡因依赖:

<dependency>
    <groupId>com.github.ben-manes.caffeine</groupId>
    <artifactId>caffeine</artifactId>
    <version>2.8.8</version>
</dependency>

com.github.ben-manes.caffine
咖啡因
2.8.8
配置:

@Configuration
@EnableCaching
public class Config {
    @Bean
    public Caffeine<Object, Object> caffeineConfig() {
        return Caffeine.newBuilder().expireAfterWrite(60, TimeUnit.MINUTES);
    }
    @Bean
    public CacheManager cacheManager(Caffeine<Object, Object> caffeine) {
        CaffeineCacheManager caffeineCacheManager = new CaffeineCacheManager();
        caffeineCacheManager.setCaffeine(caffeine);
        return caffeineCacheManager;
    }
}
@配置
@启用缓存
公共类配置{
@豆子
公共咖啡因咖啡配置(){
return.newBuilder().expireAfterWrite(60,TimeUnit.MINUTES);
}
@豆子
公共缓存管理器缓存管理器(咖啡因){
CaffeineCacheManager CaffeineCacheManager=新的CaffeineCacheManager();
咖啡因咖啡经理。设置咖啡因(咖啡因);
返回咖啡馆经理;
}
}

您好,谢谢您的回复。我用配置缓存的代码更新了这个问题。问题是,没有CaffeineCacheManager,我无法使用默认配置。SimpleCacheManager非常基础。谢谢。好的,我知道了,我更新了答案。非常感谢。spring上下文支持是我缺少的库。太好了!随时嗨,谢谢你的回复。我用配置缓存的代码更新了这个问题。问题是,没有CaffeineCacheManager,我无法使用默认配置。SimpleCacheManager非常基础。谢谢。好的,我知道了,我更新了答案。非常感谢。spring上下文支持是我缺少的库。太好了!随时