Heim  >  Artikel  >  Datenbank  >  Springboot integrierte Redis-Instanzanalyse

Springboot integrierte Redis-Instanzanalyse

WBOY
WBOYnach vorne
2023-06-03 19:07:02921Durchsuche

Redis-POM-Datei importieren

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-	redis</artifactId>
        </dependency>

Redis-Konfiguration schreiben

spring:
  redis:
    password:
    port: 6379
    host: localhost
    database: 0
    jedis:
      pool:
        ## 连接池最大连接数(使用负值表示没有限制)
        #spring.redis.pool.max-active=8
        max-active: 8
        ## 连接池最大阻塞等待时间(使用负值表示没有限制)
        #spring.redis.pool.max-wait=-1
        max-wait: -1
        ## 连接池中的最大空闲连接
        #spring.redis.pool.max-idle=8
        max-idle: 8
        ## 连接池中的最小空闲连接
        #spring.redis.pool.min-idle=0
        min-idle: 0
      ## 连接超时时间(毫秒)
    lettuce:
      shutdown-timeout: 0

SpringConfig-Datei schreiben

Da der Speicher serialisiert werden muss, müssen wir das tun configure Die Redis-Serialisierungsmethode verwendet, wenn sie nicht konfiguriert ist, standardmäßig StringRedisSerializer für Schlüssel und Wert, der nur zum Speichern von Daten vom Typ String verwendet werden kann, daher müssen wir unsere häufig verwendeten Typen konfigurieren. Gleichzeitig muss unsere Java-Entitätsklasse auch die Serializable-Schnittstelle erben

@Configuration
public class RedisConfig {

    @Bean
    public RedisTemplate<String , Object> redisTemplate(RedisConnectionFactory factory){
        RedisTemplate<String, Object> template = new RedisTemplate<>();
        template.setConnectionFactory(factory);

        Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
        ObjectMapper om = new ObjectMapper();
        om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
        om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
//        om.activateDefaultTyping(LaissezFaireSubTypeValidator.instance, ObjectMapper.DefaultTyping.NON_FINAL, JsonTypeInfo.As.PROPERTY);
        jackson2JsonRedisSerializer.setObjectMapper(om);

        StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();
        // key采用String的序列化方式
        template.setKeySerializer(stringRedisSerializer);
        // hash的key也采用String的序列化方式
        template.setHashKeySerializer(stringRedisSerializer);
        // value序列化方式采用jackson
        template.setValueSerializer(jackson2JsonRedisSerializer);
        // hash的value序列化方式采用jackson
        template.setHashValueSerializer(jackson2JsonRedisSerializer);
        template.afterPropertiesSet();
        return template;
    }

}

Redis testen

Vor diesem Schritt müssen wir die ermitteln Verbindung Der Redis-Dienst wurde gestartet

@Autowired
    private RedisTemplate<String , Object> redisTemplate;
@Test
    public void testSelect() throws SQLException {
        redisTemplate.opsForValue().set("qqq",userMapper.findByUname("zengkaitian"));
        System.out.println("redis中获取的:"+redisTemplate.opsForValue().get("qqq"));
    }

Testergebnis
Springboot integrierte Redis-Instanzanalyse

Das obige ist der detaillierte Inhalt vonSpringboot integrierte Redis-Instanzanalyse. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen