Rumah  >  Artikel  >  pangkalan data  >  Analisis contoh redis bersepadu Springboot

Analisis contoh redis bersepadu Springboot

WBOY
WBOYke hadapan
2023-06-03 19:07:02922semak imbas

Import fail redis pom

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

Tulis konfigurasi redis

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

Tulis fail springConfig

Memandangkan storan perlu bersiri, kami perlu mengkonfigurasi kaedah bersiri redis. Jika Jika tidak dikonfigurasikan, kedua-dua kunci dan nilai menggunakan StringRedisSerializer secara lalai, yang hanya boleh digunakan untuk menyimpan data jenis String, jadi kami perlu mengkonfigurasi jenis kami yang biasa digunakan. Pada masa yang sama, kelas entiti Java kami juga mesti mewarisi antara muka Serializable

@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;
    }

}

Menguji redis

Sebelum langkah ini, kami mesti memastikan bahawa perkhidmatan redis yang disambungkan mempunyai telah dimulakan

@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"));
    }

Keputusan ujian
Analisis contoh redis bersepadu Springboot

Atas ialah kandungan terperinci Analisis contoh redis bersepadu Springboot. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam