Maison > base de données > Redis > Analyse d'instance Redis intégrée à Springboot

Analyse d'instance Redis intégrée à Springboot

WBOY
Libérer: 2023-06-03 19:07:02
avant
937 Les gens l'ont consulté

Importez le fichier pom redis

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-	redis</artifactId>
        </dependency>
Copier après la connexion

Écrivez la configuration 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
Copier après la connexion

Écrivez le fichier springConfig

Étant donné que le stockage doit être sérialisé, nous devons configurer la méthode de sérialisation de redis. Si elles ne sont pas configurées, la clé et la valeur utiliseront StringRedisSerializer. par défaut. Seulement, il peut être utilisé pour stocker des données de type String, nous devons donc configurer nos types couramment utilisés. Dans le même temps, notre classe d'entité Java doit également hériter de l'interface Serialisable

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

}
Copier après la connexion

Test de redis

Avant cette étape, nous devons nous assurer que le service redis connecté a été activé

@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"));
    }
Copier après la connexion

Résultats des tests
Analyse dinstance Redis intégrée à Springboot

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