您的位置:首页 > 游戏 > 游戏 > 优分销app下载_代理网络是什么意思_枫树seo网_搜索引擎优化的五个方面

优分销app下载_代理网络是什么意思_枫树seo网_搜索引擎优化的五个方面

2025/2/24 8:10:23 来源:https://blog.csdn.net/abcnull/article/details/145502743  浏览:    关键词:优分销app下载_代理网络是什么意思_枫树seo网_搜索引擎优化的五个方面
优分销app下载_代理网络是什么意思_枫树seo网_搜索引擎优化的五个方面

文章目录

  • 前置
  • 依赖配置
  • yml 配置
  • 自定义配置(非必要)
  • 正常使用

前置

你使用的是 springboot 项目,使用 yml 来进行配置,properties 同理

依赖配置

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

这个依赖会自动引入:

spring-data-redis(Spring Data Redis 核心库)

lettuce-core(默认的 Redis 客户端,基于 Netty 的高性能客户端)

yml 配置

有 3 大 redis 客户端:Jedis、Redisson、Lettuce,其中在 spring boot2 之后,redis连接默认就采用了 lettuce

spring:redis:host: localhost  # Redis 服务器地址port: 6379       # Redis 服务器端口,默认是 6379password:        # Redis 密码(如果没有密码,可以省略)database: 0      # 使用的数据库索引,默认是 0timeout: 2000    # 连接超时时间(毫秒)lettuce:pool:max-active: 8      # 连接池最大连接数max-idle: 8        # 连接池最大空闲连接数min-idle: 0        # 连接池最小空闲连接数max-wait: -1ms     # 连接池最大阻塞等待时间(-1 表示无限制)

自定义配置(非必要)

配置完成 yml 后,你无需再配置 RedisTemplate 和 StringRedisTemplate 的 Configuration 代码了,因为 Spring Boot 会自动配置 RedisTemplate 和 StringRedisTemplate,你可以直接注入它们来操作 Redis

但是如果你非要自己在做额外的配置,那么你可以写如下这样的代码:

@Configuration  
public class RedisConfig {  @Bean  public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {  RedisTemplate<String, Object> template = new RedisTemplate<>();  template.setConnectionFactory(redisConnectionFactory);  // 使用StringRedisSerializer来序列化和反序列化redis的key值  StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();  template.setKeySerializer(stringRedisSerializer);  template.setHashKeySerializer(stringRedisSerializer);  // 使用GenericJackson2JsonRedisSerializer来序列化和反序列化redis的value值  GenericJackson2JsonRedisSerializer<Object> jackson2JsonRedisSerializer = new GenericJackson2JsonRedisSerializer<>();  ObjectMapper objectMapper = new ObjectMapper();  objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);  objectMapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);  jackson2JsonRedisSerializer.setObjectMapper(objectMapper);  template.setValueSerializer(jackson2JsonRedisSerializer);  template.setHashValueSerializer(jackson2JsonRedisSerializer);  template.afterPropertiesSet();  return template;  }  
}

正常使用

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service;@Service
public class RedisService {@Autowiredprivate RedisTemplate<String, Object> redisTemplate;@Autowiredprivate StringRedisTemplate stringRedisTemplate;// 存储数据public void setValue(String key, String value) {stringRedisTemplate.opsForValue().set(key, value);}// 获取数据public String getValue(String key) {return stringRedisTemplate.opsForValue().get(key);}// 存储对象public void setObject(String key, Object value) {redisTemplate.opsForValue().set(key, value);}// 获取对象public Object getObject(String key) {return redisTemplate.opsForValue().get(key);}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com