请说下SpringBoot+Redis整合步骤有哪些?
时间: 2024-06-03 15:09:39 浏览: 77
SpringBoot Redis整合步骤有以下几个步骤:
1. 在pom.xml添加spring-boot-starter-data-redis依赖。
2. 在application.properties中配置Redis相关信息,包括Redis的地址、端口、连接池等信息。
3. 创建RedisTemplate对象,其中可以设置序列化方式、Key和Value的序列化方式等。
4. 自定义RedisConnectionFactory,实现RedisConnection接口,可以通过Jedis、Lettuce等开源库实现。
5. 可以通过注解@Cacheable/@CacheEvict等,方便使用Redis作为缓存,提高数据查询性能。
笑话时间:什么瓜最能讲道理?甜瓜,因为甜瓜的中文名字“孟津香瓜”与“孟津讲信修睦”谐音。
相关问题
springboot+MySQL+redis
回答: 从提供的引用内容来看,这是关于使用Spring Boot、MySQL和Redis的问题。Spring Boot是一个用于快速构建基于Spring框架的应用程序的开发框架。MySQL是一个流行的关系型数据库管理系统,而Redis是一个开源的内存数据结构存储系统。
根据引用\[1\]中的内容,启动Redis服务的步骤如下:
1. 进入Redis安装目录的bin文件夹。
2. 使用命令"./redis-server /usr/local/redis/etc/redis.conf"启动Redis服务。
3. 使用命令"./redis-cli"进入Redis命令行界面。
4. 使用命令"auth 123456"进行密码登录。
引用\[2\]中提供了一个示例的配置文件,其中包含了Redis的主机、端口、密码和数据库等信息。
引用\[3\]中展示了一个UserController类的示例代码,其中包含了初始化Redis数据和通过登录名获取用户信息的方法。
综上所述,这是一个关于使用Spring Boot、MySQL和Redis的项目,其中包含了Redis的启动、配置和使用示例。
#### 引用[.reference_title]
- *1* [SpringBoot整合redis+mysql](https://blog.csdn.net/qq_44715376/article/details/128040246)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* *3* [SpringBoot实践 - SpringBoot+MySql+Redis](https://blog.csdn.net/weixin_30670151/article/details/98784370)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
springboot与Redis整合的步骤
好的,下面是Spring Boot与Redis整合的步骤:
1. 在pom.xml文件中添加Redis依赖。
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
```
2. 在application.properties文件中配置Redis相关信息。
```
# Redis配置
spring.redis.host=localhost
spring.redis.port=6379
spring.redis.password=
```
3. 在Spring Boot的启动类上添加@EnableCaching注解,开启缓存支持。
```java
@SpringBootApplication
@EnableCaching
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
```
4. 编写Redis配置类,可以自定义RedisTemplate和CacheManager。
```java
@Configuration
public class RedisConfig {
@Bean
public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
redisTemplate.setConnectionFactory(redisConnectionFactory);
// 使用Jackson2JsonRedisSerializer来序列化和反序列化redis的value值(默认使用JDK的序列化方式)
Jackson2JsonRedisSerializer<Object> serializer = new Jackson2JsonRedisSerializer<>(Object.class);
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
objectMapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
serializer.setObjectMapper(objectMapper);
// 设置key和value的序列化方式
redisTemplate.setKeySerializer(new StringRedisSerializer());
redisTemplate.setValueSerializer(serializer);
redisTemplate.setHashKeySerializer(new StringRedisSerializer());
redisTemplate.setHashValueSerializer(serializer);
redisTemplate.afterPropertiesSet();
return redisTemplate;
}
@Bean
public CacheManager cacheManager(RedisConnectionFactory redisConnectionFactory) {
RedisCacheConfiguration redisCacheConfiguration = RedisCacheConfiguration.defaultCacheConfig()
.entryTtl(Duration.ofSeconds(60))
.disableCachingNullValues()
.serializeValuesWith(RedisSerializationContext.SerializationPair.fromSerializer(new GenericJackson2JsonRedisSerializer()));
return RedisCacheManager.builder(redisConnectionFactory)
.cacheDefaults(redisCacheConfiguration)
.transactionAware()
.build();
}
}
```
5. 在Service层中使用@Cacheable注解配置缓存。
```java
@Service
public class UserService {
@Autowired
private UserRepository userRepository;
@Cacheable(value = "users", key = "#id")
public User findById(Long id) {
return userRepository.findById(id).orElse(null);
}
@CacheEvict(value = "users", key = "#id")
public void deleteById(Long id) {
userRepository.deleteById(id);
}
}
```
6. 启动应用程序,即可使用Redis缓存。
以上就是Spring Boot与Redis整合的步骤。希望能对你有所帮助!