如何在二级缓存上设置过期时间?
How can I set expiry on Second Level Cache?
问题
我不能用Ehcache设置二级缓存过期。
有什么方法可以配置过期时间吗?
我的代码
build.gradle
implementation 'org.springframework.boot:spring-boot-starter-cache'
implementation 'org.hibernate:hibernate-jcache:5.6.5.Final'
implementation 'org.ehcache:ehcache:3.9.9'
application.yml
spring:
jpa:
properties:
javax:
persistence:
sharedCache:
mode: ENABLE_SELECTIVE # Enable caches only @Cacheable annotated classes
hibernate:
cache:
use_query_cache: true
use_second_level_cache: true
region:
factory_class: org.hibernate.cache.jcache.JCacheRegionFactory
我的实体
@Getter
@NoArgsConstructor(access = AccessLevel.PROTECTED)
@Entity
@Cacheable
@Cache(region = "test_cache", usage = CacheConcurrencyStrategy.READ_WRITE)
public class Test {
.
.
.
}
是的,有办法。
- 将您的
factory_class
更改为 org.hibernate.cache.ehcache.EhCacheRegionFactory
- 在
/src/main/resources
中使用以下内容创建一个 ehcache.xml
:
...
<cache-template name="default">
<expiry>
<ttl unit="hours">48</ttl>
</expiry>
</cache-template>
...
有关 XML 配置的详细信息,请访问 https://www.ehcache.org/documentation/3.9/xml.html
问题
我不能用Ehcache设置二级缓存过期。
有什么方法可以配置过期时间吗?
我的代码
build.gradle
implementation 'org.springframework.boot:spring-boot-starter-cache'
implementation 'org.hibernate:hibernate-jcache:5.6.5.Final'
implementation 'org.ehcache:ehcache:3.9.9'
application.yml
spring:
jpa:
properties:
javax:
persistence:
sharedCache:
mode: ENABLE_SELECTIVE # Enable caches only @Cacheable annotated classes
hibernate:
cache:
use_query_cache: true
use_second_level_cache: true
region:
factory_class: org.hibernate.cache.jcache.JCacheRegionFactory
我的实体
@Getter
@NoArgsConstructor(access = AccessLevel.PROTECTED)
@Entity
@Cacheable
@Cache(region = "test_cache", usage = CacheConcurrencyStrategy.READ_WRITE)
public class Test {
.
.
.
}
是的,有办法。
- 将您的
factory_class
更改为org.hibernate.cache.ehcache.EhCacheRegionFactory
- 在
/src/main/resources
中使用以下内容创建一个ehcache.xml
:
...
<cache-template name="default">
<expiry>
<ttl unit="hours">48</ttl>
</expiry>
</cache-template>
...
有关 XML 配置的详细信息,请访问 https://www.ehcache.org/documentation/3.9/xml.html