Maison > base de données > Redis > Quelles sont les méthodes d'utilisation du cache Redis dans SpringBoot ?

Quelles sont les méthodes d'utilisation du cache Redis dans SpringBoot ?

PHPz
Libérer: 2023-06-02 16:52:28
avant
959 Les gens l'ont consulté
1. Importez les dépendances Redis
<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
Copier après la connexion
2. Configurez Redis en conséquence dans application.properties
#redis配置
#Redis服务器地址
spring.redis.host=127.0.0.1
#Redis服务器连接端口
spring.redis.port=6379
#Redis数据库索引(默认为0)
spring.redis.database=0  
#连接池最大连接数(使用负值表示没有限制)
spring.redis.jedis.pool.max-active=50
#连接池最大阻塞等待时间(使用负值表示没有限制)
spring.redis.jedis.pool.max-wait=3000
#连接池中的最大空闲连接
spring.redis.jedis.pool.max-idle=20
#连接池中的最小空闲连接
spring.redis.jedis.pool.min-idle=2
#连接超时时间(毫秒)
spring.redis.timeout=5000
Copier après la connexion
3. Écrivez une classe d'outils Redis encapsulée Pratique pour des opérations simples sur Redis. cache
package com.example.demo.Util;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;

@Component
public class RedisUtil {

    @Autowired
    private RedisTemplate<String,String> redisTemplate;

    /**
     * 读取缓存
     * @param key
     * @return
     */
    public String get(final String key){
        return redisTemplate.opsForValue().get(key);
    }

    /**
     * 写入缓存
     * @param key
     * @param value
     * @return
     */
    public boolean set(final String key,String value){
        boolean result = false;

        try {
            redisTemplate.opsForValue().set(key,value);
            result = true;
        } catch (Exception e){
            e.printStackTrace();
        }
        return result;
    }

    /**
     * 更新缓存
     * @param key
     * @param value
     * @return
     */
    public boolean update(final String key,String value){
        boolean result = false;
        try {
            redisTemplate.opsForValue().getAndSet(key,value);
            result = true;
        } catch (Exception e){
            e.printStackTrace();
        }
        return result;
    }

    /**
     * 删除缓存
     * @param key
     * @return
     */
    public boolean delete(final String key){
        boolean result = false;
        try {
            redisTemplate.delete(key);
            result = true;
        } catch (Exception e){
            e.printStackTrace();
        }
        return result;
    }
}
Copier après la connexion
4. Écrivez une classe de test pour tester les résultats de l'opération

Insérer l'opération :

/**
* 插入一个key为"username",value为"supper"的键值对
*/
@Test
public void set(){
  redisUtil.set("username","supper");
}
Copier après la connexion

Exécution des résultats :

127.0.0.1: 6379> get username
"supper"
Copier après la connexion
# 🎜🎜#Opération de lecture :

/**
* 读取key为"username"的值
*/
@Test
public void get(){
  System.out.println(redisUtil.get("username"));
}
Copier après la connexion

Résultat d'exécution :

supper
Copier après la connexion

Opération de mise à jour :

/**
* 将key为"username"的键值对的值更新为"chen"
*/
@Test
public void update(){
  redisUtil.update("username","chen");
}
Copier après la connexion

Résultat d'exécution :# 🎜🎜#
127.0.0.1: 6379> get username
"chen"
Copier après la connexion
#🎜🎜 #Opération Supprimer :

/**
* 删除key为"username"的键值对
*/
@Test
public void del(){
  redisUtil.delete("username");
}
Copier après la connexion

Résultat d'exécution :

127.0.0.1: 6379> get username
(nil)
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal