系列三、常用配置文件

一、Redis配置文件

1.1、MyRedisConfig

/**
 * @Author : 一叶浮萍归大海
 * @Date: 2024/1/15 11:01
 * @Description:
 */
@Configuration
public class MyRedisConfig extends CachingConfigurerSupport {

    /**
     * 解决RedisTemplate、StringRedisTemplate中文乱码问题
     * @param connectionFactory
     * @return
     */
    @Bean
    public RedisTemplate redisTemplate(LettuceConnectionFactory connectionFactory) {
        RedisTemplate redisTemplate = new RedisTemplate<>();
        redisTemplate.setConnectionFactory(connectionFactory);

        redisTemplate.setKeySerializer(RedisSerializer.string());
        redisTemplate.setValueSerializer(new GenericJackson2JsonRedisSerializer());

        redisTemplate.setHashKeySerializer(RedisSerializer.string());
        redisTemplate.setHashValueSerializer(new GenericJackson2JsonRedisSerializer());

        redisTemplate.afterPropertiesSet();
        return redisTemplate;
    }

    /**
     * 解决Spring Session中文乱码
     * 思路:RedisHttpSessionConfiguration ===> createRedisTemplate ===>配置一个bean名为springSessionDefaultRedisSerializer的RedisSerializer
     * 参考:https://www.jianshu.com/p/dd1df913b1b2
     * @return
     */
    @Bean
    public RedisSerializer springSessionDefaultRedisSerializer() {
        GenericJackson2JsonRedisSerializer serializer = new GenericJackson2JsonRedisSerializer();
        return serializer;
    }

}

二、RestTemplate配置文件

2.1、MyRestTemplateConfig

/**
 * @Author : 一叶浮萍归大海
 * @Date: 2024/1/15 20:27
 * @Description:
 */
@Configuration
public class MyRestTemplateConfig8083 {

    @Bean
    public RestTemplate restTemplate() {
        SimpleClientHttpRequestFactory requestFactory = new SimpleClientHttpRequestFactory();
        // 解决401报错时,报java.net.HttpRetryException: cannot retry due to server authentication, in streaming mode
        requestFactory.setOutputStreaming(false);
        RestTemplate restTemplate = new RestTemplate(requestFactory);

        return restTemplate;
    }

}

你可能感兴趣的:(开发环境系列,java,Redis)