Heim > Datenbank > Redis > Welche Methoden gibt es zur Verwendung des Redis-Cache in SpringBoot?

Welche Methoden gibt es zur Verwendung des Redis-Cache in SpringBoot?

PHPz
Freigeben: 2023-06-02 16:52:28
nach vorne
976 Leute haben es durchsucht
1. Redis-Abhängigkeiten importieren
<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
Nach dem Login kopieren
2. Konfigurieren Sie Redis entsprechend in 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
Nach dem Login kopieren
3. Schreiben Sie eine gekapselte Redis-Tool-Klasse, um einfache Vorgänge im Redis-Cache zu ermöglichen Vorgang einfügen:
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;
    }
}
Nach dem Login kopieren
Ergebnis ausführen:
/**
* 插入一个key为"username",value为"supper"的键值对
*/
@Test
public void set(){
  redisUtil.set("username","supper");
}
Nach dem Login kopieren

Vorgang lesen:

127.0.0.1: 6379> get username
"supper"
Nach dem Login kopieren

Vorgang ausführen:

/**
* 读取key为"username"的值
*/
@Test
public void get(){
  System.out.println(redisUtil.get("username"));
}
Nach dem Login kopieren

Vorgang aktualisieren:

supper
Nach dem Login kopieren

Vorgang löschen:

/**
* 将key为"username"的键值对的值更新为"chen"
*/
@Test
public void update(){
  redisUtil.update("username","chen");
}
Nach dem Login kopieren

Ergebnis ausführen:

127.0.0.1: 6379> get username
"chen"
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWelche Methoden gibt es zur Verwendung des Redis-Cache in SpringBoot?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:yisu.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage