springboot的yml文件中如何配置redis

本文介绍在SpringBoot项目的application.yml文件中如何正确配置Redis的相关参数,以便开发者能够快速地进行集成设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在Spring Boot中,使用yml格式配置远程Redis可以通过以下步骤实现: 1. 在pom.xml文件中添加Redis依赖: ``` <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> ``` 2.application.yml文件中添加Redis配置信息: ``` spring: redis: host: redis.example.com port: 6379 password: yourpassword ``` 其中,host为Redis服务器的IP地址或域名,port为Redis服务器的端口号,默认为6379,password为Redis服务器的密码,如果没有密码可以不填。 3.Redis配置类中进行配置: ``` @Configuration @EnableCaching public class RedisConfig extends CachingConfigurerSupport { @Value("${spring.redis.host}") private String host; @Value("${spring.redis.port}") private int port; @Value("${spring.redis.password}") private String password; @Bean public JedisPool redisPoolFactory() { JedisPoolConfig jedisPoolConfig = new JedisPoolConfig(); jedisPoolConfig.setMaxIdle(8); jedisPoolConfig.setMaxTotal(8); jedisPoolConfig.setMinIdle(0); JedisPool jedisPool = new JedisPool(jedisPoolConfig, host, port, 10000, password); return jedisPool; } @Bean public RedisTemplate<String, Object> redisTemplate(JedisConnectionFactory jedisConnectionFactory) { RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>(); redisTemplate.setConnectionFactory(jedisConnectionFactory); redisTemplate.setKeySerializer(new StringRedisSerializer()); redisTemplate.setValueSerializer(new GenericJackson2JsonRedisSerializer()); redisTemplate.setHashKeySerializer(new StringRedisSerializer()); redisTemplate.setHashValueSerializer(new GenericJackson2JsonRedisSerializer()); redisTemplate.afterPropertiesSet(); return redisTemplate; } @Bean public RedisCacheManager cacheManager(JedisConnectionFactory jedisConnectionFactory) { RedisCacheConfiguration redisCacheConfiguration = RedisCacheConfiguration.defaultCacheConfig() .disableCachingNullValues() .serializeKeysWith(RedisSerializationContext.SerializationPair.fromSerializer(new StringRedisSerializer())) .serializeValuesWith(RedisSerializationContext.SerializationPair.fromSerializer(new GenericJackson2JsonRedisSerializer())); RedisCacheManager redisCacheManager = RedisCacheManager.builder(jedisConnectionFactory) .cacheDefaults(redisCacheConfiguration) .build(); return redisCacheManager; } @Bean public JedisConnectionFactory jedisConnectionFactory() { JedisConnectionFactory jedisConnectionFactory = new JedisConnectionFactory(); jedisConnectionFactory.setHostName(host); jedisConnectionFactory.setPort(port); jedisConnectionFactory.setPassword(password); return jedisConnectionFactory; } } ``` 其中,注解@EnableCaching用于启用缓存功能,@Value用于从application.yml中读取Redis配置信息,redisPoolFactory方法用于创建Jedis连接池,redisTemplate方法用于创建RedisTemplate对象,cacheManager方法用于创建RedisCacheManager对象,jedisConnectionFactory方法用于创建JedisConnectionFactory对象。 4. 在需要使用Redis缓存的地方注入RedisTemplate对象即可: ``` @Autowired private RedisTemplate<String, Object> redisTemplate; ``` 以上就是使用yml格式配置远程Redis的步骤,使用Redis缓存可以提高数据查询的速度,降低数据库的压力。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值