SpringBoot整合Redis(项目实战篇,java基础电子书免费下载

3、配置链接信息

server.port=80

server.servlet.context-path=/

#reids相关配置

#redis服务器地址

spring.redis.host=localhost

#雷迪森服务器端口

spring.redis.port=6379

#redis密码,默认为空

spring.redis.password=

#redis数据库索引(默认为0)

spring.redis.database=0

#连接池对打阻塞等待时间(负表示没有限制)

spring.redis.jedis.pool.max-wait=10000

#连接池最大连接数(负表示没有限制)

spring.redis.jedis.pool.max-active=100

#连接池中的最大空闲链接

spring.redis.jedis.pool.max-idle=20

#连接池中的最小空闲链接

spring.redis.jedis.pool.min-idle=0

#链接超时时间

spring.redis.timeout=3000

测试链接


1、测试

在RedisDemoApplicationTests测试类中,编写代码测试连接。

在这里插入图片描述

测试代码如下:

import org.junit.jupiter.api.Test;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.boot.test.context.SpringBootTest;

import org.springframework.data.redis.core.RedisTemplate;

@SpringBootTest

class RedisDemoApplicationTests {

@Autowired

private RedisTemplate<String, String> redisTemplate;

@Test

void contextLoads() {

//向redis中添加数据

redisTemplate.opsForValue().set(“keys”, “value值”);

//根据键值取出数据

System.out.println(redisTemplate.opsForValue().get(“keys”));

}

}

【释】 RedisTemplate是Spring Data Redis提供给用户的最高级的抽象客户端,用户可直接通过RedisTemplate对redis进行操作。操作方法即redis的指令,关于redis的指令的操作可以移步:Redis数据类型及基本使用

可以点进去看一下RedisTemplate继承关系和方法,下面是继承关系,方法就比较多了,这里就不贴出来了,感兴趣的小伙伴可以直接去RedisTemplate类中看看。

//RedisAccessor是RedisTemplate定义普通属性的基类,不直接使用

//RedisOperations是指定RedisTemplate实现的Redis connection操作的集合接口

//BeanClassLoaderAware是给其实现类是设置类加载器的接口

RedisTemplate<K, V> extends RedisAccessor implements RedisOperations<K, V>, BeanClassLoaderAware

【注】 上述的测试案例中RedisTemplate中的value值设置的是String类型,但redis有五种数据类型,所以这里最好使用Object类型。

@Resource

private RedisTemplate<String, Object> redisTemplate;

这里注解如果继续使用@AutoWired会报错,需要使用@Resource,这两个注解的区别在前者是根据类型后者是根据名字(报错原因:@AutoWired找不到该类型<String,Object>的Bean因为根本没有。使用@Resource直接注入的是RedisTemplate)

操作不同类型的数据,调用的方法不同

  1. 操作String字符串类型数据时,使用RedisTemplate类中的opsForValue方法操作。

  2. 操作List列表类型数据时,使用RedisTemplate类中的opsForList方法操作。

  3. 操作Set集合类型数据时,使用RedisTemplate类中的opsForSet方法操作。

  4. 操作Hash哈希类型数据时,使用RedisTemplate类中的opsForHash方法操作。

  5. 操作Zset有序集合类型数据时,使用RedisTemplate类中的opsForZSet方法操作。

2、查看效果

查看Redis中的数据,可以使用RedisDesktopManager工具查看。

在这里插入图片描述

Springboot整合Redis使用


上述操作可以直接在Springboot项目中使用。但也可以对redisTemplate的操作进行一下简单的封装。

1、Redis配置类

Redis配置类RedisConfig类代码如下:

import com.fasterxml.jackson.annotation.JsonAutoDetect;

import com.fasterxml.jackson.annotation.PropertyAccessor;

import com.fasterxml.jackson.databind.ObjectMapper;

import org.springframework.cache.annotation.CachingConfigurerSupport;

import org.springframework.cache.annotation.EnableCaching;

import org.springframework.context.annotation.Bean;

import org.springframework.context.annotation.Configuration;

import org.springframework.data.redis.connection.RedisConnectionFactory;

import org.springframework.data.redis.core.*;

import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;

import org.springframework.data.redis.serializer.StringRedisSerializer;

/**

  • redis配置类

*/

@Configuration

@EnableCaching

public class RedisConfig extends CachingConfigurerSupport {

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值