Anotaciones de caché de Springboot @CachePut, @Cacheable, @CacheEvict función y uso

Tabla de contenido

1. Caché SpringBoot

1.1 ¿Qué es el caché?

1.2 caché de SpringBoot

2. caché incorporado de springboot

2.1 @CachePut

2.2 @Cacheable

2.3 @CacheEvict


1. Caché SpringBoot

1.1 ¿Qué es el caché?

       El caché es un medio de almacenamiento de datos temporal entre el medio de almacenamiento de datos permanente y la aplicación. El uso del caché puede reducir efectivamente la cantidad de procesos de lectura de datos de baja velocidad (como el disco IO) y mejorar el rendimiento del sistema. Además, el almacenamiento en caché no sólo se puede utilizar para mejorar la eficiencia de la lectura de datos desde medios de almacenamiento permanentes, sino también para proporcionar control del almacenamiento de datos temporal. Springboot proporciona soluciones para integrar casi todas las tecnologías de almacenamiento en caché del mercado.

1.2 caché de SpringBoot

        ​ ​ ​ En Spring Boot, @CachePut, @Cacheable y @CacheEvict son anotaciones utilizadas para la gestión de caché. Se pueden utilizar con la abstracción de almacenamiento en caché de Spring Framework para mejorar el rendimiento y la capacidad de respuesta de las aplicaciones.

2. caché incorporado de springboot

2.1 @CachePut

        @CachePut: esta anotación se utiliza paraagregar el valor de retorno del método al caché actualizado. . Cada vez que se llama a un método anotado con @CachePut, se ejecuta el cuerpo del método y el valor de retorno se almacena en la memoria caché. Si la misma clave ya existe en el caché, el valor en el caché se

【Ejemplo】

@CachePut(value = "myCache", key = "#id") 
public User updateUser(String id, User user) { 
    // 更新用户信息的逻辑 
    return updatedUser; 
}

2.2 @Cacheable

        @Cacheable: esta anotación se utiliza para obtener datos de caché =4>. Cuando se llama a un método anotado con @Cacheable, primero se verifica si existe la misma clave en el caché. Si existe, el valor se obtiene directamente del caché y se devuelve; si no existe, el cuerpo del método se ejecuta y el valor de retorno se almacena en el caché.

【Ejemplo】

@Cacheable(value = "myCache", key = "#id") 
public User getUserById(String id) { 
    // 从数据库或其他数据源获取用户信息的逻辑 
    return user; 
}

2.3 @CacheEvict

        @CacheEvict: esta anotación se utiliza paraeliminardatos del caché< ai=4>. Cuando se llama a un método anotado con @CacheEvict, el valor correspondiente se eliminará del caché según la clave especificada.

【Ejemplo】

@CacheEvict(value = "myCache", key = "#id") 
public void deleteUser(String id) { 
    // 删除用户的逻辑 
}

【注】Estas anotaciones se pueden utilizar con diferentes administradores de caché (como Ehcache, Redis, etc.) y deben configurarse según las necesidades específicas. Antes de utilizar estas anotaciones, es necesario configurar el administrador de caché y la estrategia de caché correspondientes en la aplicación Spring Boot.

Supongo que te gusta

Origin blog.csdn.net/chaojichunshen/article/details/131614364
Recomendado
Clasificación