15、 (2.5分)在Spring Boot中使用缓存时,以下哪个注解可以用于定义缓存过期时间 A、@CacheEvict B、@Cacheable C、@CachePut D.@CacheConfig
时间: 2023-08-11 07:32:28 浏览: 117
B、@Cacheable。在Spring Boot中使用缓存,可以使用`@Cacheable`注解来标注方法,表示该方法的结果可以被缓存。在默认情况下,缓存的key是由参数值来决定的,而缓存的值则是由方法的返回值来决定的。如果需要定义缓存的过期时间,可以在`@Cacheable`注解中使用`key`和`cacheManager`属性,例如:
```java
@Cacheable(value = "myCache", key = "#id", cacheManager = "cacheManager",
expireAfterWrite = 60, timeUnit = TimeUnit.SECONDS)
public User getUserById(Long id) {
// ...
}
```
这里的`expireAfterWrite`属性表示缓存的过期时间是60秒,`timeUnit`属性表示时间单位是秒。其他选项中,`@CacheEvict`注解用于从缓存中删除数据;`@CachePut`注解用于更新缓存中的数据;`@CacheConfig`注解用于统一配置缓存的默认属性。
相关问题
6、(2.5分)在Spring Boot中使用缓存时,以下哪个注解可以用于设置缓存的最大大小A. @CacheEvict B、@Caching C、@CachePut D. @CacheConfig
D、@CacheConfig。@CacheConfig注解可以用于在类级别上指定缓存的公共配置,其中包括缓存的名称、缓存的最大大小、缓存的过期时间等。例如:
```java
@CacheConfig(cacheNames = "myCache", cacheManager = "cacheManager", maxEntriesLocalHeap = 1000)
```
其中,cacheNames属性指定缓存的名称,cacheManager属性指定缓存管理器的名称,maxEntriesLocalHeap属性指定缓存的最大大小。其他选项中的@CacheEvict注解用于从缓存中删除数据,@Caching注解可以用于在一个方法上同时指定多个缓存操作,@CachePut注解用于向缓存中添加数据或更新数据,但都不能用于设置缓存的最大大小。
21、(2.5分)在Spring Boot中,以下哪个注解用于开启Spring的缓存机制A、@CacheEvict B、@EnableCaching C、@Cacheable D、@CacheConfig
B、`@EnableCaching`。在Spring Boot中,要开启Spring的缓存机制,需要在配置类中使用`@EnableCaching`注解,例如:
```java
@Configuration
@EnableCaching
public class AppConfig {
@Bean
public CacheManager cacheManager() {
return new ConcurrentMapCacheManager("cache1", "cache2");
}
}
```
这里的`cacheManager()`方法用于配置缓存管理器,`@EnableCaching`注解用于开启缓存机制。其他选项中,`@Cacheable`、`@CacheEvict`和`@CacheConfig`都是用于配置缓存的注解,但不是用于开启缓存机制的注解。`@Cacheable`用于将方法的返回值缓存到指定的缓存中,`@CacheEvict`用于清空指定缓存中的缓存项,`@CacheConfig`用于统一配置缓存的属性,避免在每个缓存注解中都重复配置。
阅读全文