SpringBoot整合SpringDataRedis

目录

1.导入Maven坐标

2.配置相关的数据源

3.编写配置类

4.通过RedisTemplate对象操作Redis


SpringBoot整合Redis有很多种,这里使用的是Spring Data Redis。接下来就springboot整合springDataRedis步骤做一个详细介绍。

1.导入Maven坐标

首先,需要导入一个spring官方的start。

XML 复制代码
        <dependency>
            <groupId>org.springframework.data</groupId>
            <artifactId>spring-data-redis</artifactId>
        </dependency>

2.配置相关的数据源

这里只做一些最基本的配置,包括地址,端口号,密码等等,其他的最大连接数等等就大家按照自己的需求配置即可。

XML 复制代码
spring:
  redis:
    database: 8
    password: 1234
    host: localhost
    port: 6379

3.编写配置类

因为使用spring data redis需要用到一个RedisTemplate对象,所以我们需要编写一个配置类,然后创建一个RedisTemplate对象并交给spring管理,这样我们就可以注入这个bean对象并且使用它。

java 复制代码
@Configuration
@Slf4j
public class RedisConfiguration {
    @Bean
    public RedisTemplate<String , Object> redisTemplate(RedisConnectionFactory redisConnectionFactory){
        log.info("开始创建redis模板对象");
        RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
//        设置key的序列化器(防止乱码)
        redisTemplate.setKeySerializer(new StringRedisSerializer());
        redisTemplate.setConnectionFactory(redisConnectionFactory);
        return redisTemplate ;
    }
}

4.通过RedisTemplate对象操作Redis

最后,我们进行一个测试,通过注入RedisTemplate对象来对Redis进行相关数据的存储和取用等等操作。

java 复制代码
@SpringBootTest
public class springbootTest {
    @Autowired
    private RedisTemplate<String , Object> redisTemplate ;  //先注入RedisTemplate对象
    @Test
    public void StringTest(){
//        获取到操作String字符串类型的操作对象
        ValueOperations<String, Object> ops = redisTemplate.opsForValue();
//        往里面存储一个key为"name" , value为"zhangsan"的数据
        ops.set("name","zhangsan");
//        获取key为"name"的值
        String name = (String) ops.get("name");
        System.out.println("得到name为:  "+name);
    }
}

最后我们来看看测试结果:

数据name已经成功存储在Redis数据库中:

控制台成功获取到对应的数据:

本次分享就到这里啦,下次再见!

相关推荐
颜如玉1 分钟前
动态拼接SQL实践备忘📝
java·sql·mybatis
952361 分钟前
数据结构-堆
java·数据结构·学习·算法
by__csdn13 分钟前
Spring Boot 全面解析
java·数据库·spring boot·后端·spring
她说..14 分钟前
基于Redis实现的分布式唯一编号生成工具类
java·数据库·redis·分布式·springboot
西岭千秋雪_16 分钟前
Kafka客户端参数(一)
java·分布式·后端·kafka·linq
合作小小程序员小小店22 分钟前
web网页开发,在线%人力资源管理%系统,基于Idea,html,css,jQuery,java,jsp,ssh,mysql。
java·前端·css·数据库·mysql·html·intellij-idea
Felix_XXXXL26 分钟前
28.<Spring博客系统⑤(部署的整个过程
java·后端
半聋半瞎1 小时前
【JVM操作字节码文件流程详解】
java·jvm·面试
CodeAmaz1 小时前
通用 List 分批切割并循环查询数据库工具类
java·数据结构·工具类·分页
消失的旧时光-19431 小时前
Kotlinx.serialization 对多态对象(sealed class )支持更好用
java·服务器·前端