您的位置:首页 > 健康 > 美食 > 成都高度网站技术建设公司_岳阳卖房网站_网络推广哪家做得比较好_成都seo优化外包公司

成都高度网站技术建设公司_岳阳卖房网站_网络推广哪家做得比较好_成都seo优化外包公司

2025/3/18 16:54:20 来源:https://blog.csdn.net/weixin_62922042/article/details/146308597  浏览:    关键词:成都高度网站技术建设公司_岳阳卖房网站_网络推广哪家做得比较好_成都seo优化外包公司
成都高度网站技术建设公司_岳阳卖房网站_网络推广哪家做得比较好_成都seo优化外包公司

Redis 是一种高性能的键值存储数据库,常用于缓存、会话管理和消息队列等场景。Spring Boot 通过 Spring Data Redis 提供了简洁的整合方式。


1. 环境准备

1.1 添加依赖

pom.xml 中添加 Redis 依赖(Spring Boot 3.x):

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!-- 若使用 Jedis 客户端 -->
<dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId>
</dependency>

2. 配置 Redis 连接

application.properties 中配置 Redis 连接信息:

spring.data.redis.host=localhost
spring.data.redis.port=6379
spring.data.redis.password=  # 若无密码则留空
spring.data.redis.database=0

3. 使用 RedisTemplate 操作 Redis

3.1 注入 RedisTemplate

Spring Boot 自动配置了 RedisTemplate,可直接注入使用:

@Autowired
private RedisTemplate<String, Object> redisTemplate;

3.2 基础操作示例

// 存储字符串
redisTemplate.opsForValue().set("name", "Alice");// 获取字符串
String name = (String) redisTemplate.opsForValue().get("name");
System.out.println("Name: " + name); // 输出: Alice// 设置过期时间(30秒)
redisTemplate.expire("name", 30, TimeUnit.SECONDS);// 删除键
redisTemplate.delete("name");

3.3 存储对象(JSON序列化)

默认序列化可能存在问题,建议配置自定义序列化(在配置类中添加):

@Configuration
public class RedisConfig {@Beanpublic RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {RedisTemplate<String, Object> template = new RedisTemplate<>();template.setConnectionFactory(factory);template.setKeySerializer(new StringRedisSerializer());template.setValueSerializer(new GenericJackson2JsonRedisSerializer());return template;}
}

存储自定义对象:

User user = new User("Bob", 25);
redisTemplate.opsForValue().set("user:1", user);
User cachedUser = (User) redisTemplate.opsForValue().get("user:1");

4. 使用 Spring Cache 注解

4.1 启用缓存

在启动类添加 @EnableCaching

@SpringBootApplication
@EnableCaching
public class Application { ... }

4.2 缓存方法结果

@Service
public class UserService {@Cacheable(value = "userCache", key = "#id")public User getUserById(String id) {// 模拟数据库查询return new User(id, "CacheUser", 30);}@CacheEvict(value = "userCache", key = "#id")public void deleteUser(String id) {// 删除数据库记录}
}

5. 测试 Redis 连接

创建一个简单的测试类:

@Component
public class RedisTest implements CommandLineRunner {@Autowiredprivate RedisTemplate<String, String> redisTemplate;@Overridepublic void run(String... args) {redisTemplate.opsForValue().set("testKey", "Hello Redis!");String value = redisTemplate.opsForValue().get("testKey");System.out.println("Redis测试值: " + value); // 输出: Hello Redis!}
}

总结

通过以上步骤即可在 Spring Boot 中快速使用 Redis。关键点:

  1. 配置 Redis 连接信息
  2. 使用 RedisTemplate 进行 CRUD 操作
  3. 通过 @Cacheable 实现声明式缓存

确保本地已启动 Redis 服务(可通过 redis-server 命令启动)。完整代码可参考 Spring Data Redis 官方文档。


希望本教程能帮助您快速上手 Redis 整合!如有问题欢迎在评论区留言。

版权声明:

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

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