SpringBoot整合Redis

  • SpringBoot操作数据:spring-data jpa jdbc mongodb redis
  • SpringData 也是和SpringBoot一样的项目
  • 说明:在SpringBoot2.x之后,原来使用的jedis被替换成了lettuce
  • jedis:采用的直连,多个线程操作的话,是不安全的,如果想要避免不安全的,使用jedis pool连接池。BIO模式
  • lettuce:采用netty,实例可以在多个线程中进行共享,不存在线程不安全的情况,可以减少线程数据,NIO模式。

源码分析:

整合测试

  • 导入依赖
<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>
  • 配置连接
spring.redis.host=127.0.0.1
spring.redis.port=6379
  • 测试
@SpringBootTest
class Redis02SpringbootApplicationTests {

    @Autowired
    private RedisTemplate redisTemplate;

    @Test
    void contextLoads() {
        // redisTemplate
        // opsForValue 操作字符串 类似String
        // opsForList 操作List 类似String

        //获取redis连接对象
//        RedisConnection connection = redisTemplate.getConnectionFactory().getConnection();
//        connection.flushDb();
//        connection.flushAll();
        redisTemplate.opsForValue().set("key","violet");
        System.out.println(redisTemplate.opsForValue().get("key"));

    }
}

pojo类在企业中必须要序列化