SpringBoot集成redis缓存

1.使用Spring-data包为redis客户端连接工具

在pom文件中添加以下依赖:

    <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-logging</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

2.添加redis相关配置

在application.properties中添加以下配置

# Redis数据库索引(默认为0)
spring.redis.database=0
# Redis服务器地址
spring.redis.host=xxx.xxx.xxx.xxx
# Redis服务器连接端口
spring.redis.port=xxxx
# Redis服务器连接密码(默认为空)
spring.redis.password=xxxxxx
# 连接池最大连接数(使用负值表示没有限制)
spring.redis.pool.max-active=8
# 连接池最大阻塞等待时间(使用负值表示没有限制)
spring.redis.pool.max-wait=-1
# 连接池中的最大空闲连接
spring.redis.pool.max-idle=8
# 连接池中的最小空闲连接
spring.redis.pool.min-idle=0
# 连接超时时间(毫秒)
spring.redis.timeout=0

3.添加redisTemplate的bean

添加配置类,代码如下:

@Configuration
public class RedisConfig {

    @Autowired
    JedisConnectionFactory jedisConnectionFactory;

    /**
     * @return redisTemplate 相当于xml中的bean
     */
    @Bean
    RedisTemplate<String, Object> redisTemplate(){
        RedisTemplate<String, Object> redisTemplate = new RedisTemplate();
        redisTemplate.setConnectionFactory(jedisConnectionFactory);
        return redisTemplate;
    }

}

4.测试redis是否可用

在test文件中添加以下单元测试内容,如测试通过则redis配置成功:

@RunWith(SpringRunner.class)
@SpringBootTest
public class RedisTest {

    @Autowired
    private RedisTemplate<String, Object> redisTemplate;

    @Test
    public void redisTest(){
        List<String> nameList= new ArrayList<>();
        nameList.add("name1");
        nameList.add("name2211");
        redisTemplate.opsForValue().set("name",  "demoName");
        redisTemplate.opsForValue().set("nameList", nameList);
        Assert.assertEquals(redisTemplate.opsForValue().get("name"), "demoName");
        System.out.printf(redisTemplate.opsForValue().get("nameList").toString());

    }
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏C++

Windows核心编程:第4章 进程

1073
来自专栏LanceToBigData

SpringBoot(三)整合Redis

spring boot对常用的数据库支持外,对nosql 数据库也进行了封装自动化。 redis介绍 Redis是目前业界使用最广泛的内存数据存储。相比memc...

3214
来自专栏前端大白专栏

在使用angular2中使用nodejs创建服务器,并成功获取参数

1467
来自专栏DOTNET

学会WCF之试错法——超时

服务契约 [ServiceContract] public interface IService { [OperationCon...

3136
来自专栏JackieZheng

Spring Boot系列——7步集成RabbitMQ

RabbitMQ是一种我们经常使用的消息中间件,通过RabbitMQ可以帮助我们实现异步、削峰的目的。

583
来自专栏java架构师

WCF学习笔记(二)

动手了,WCF 开发WCF服务的终结点需要涉及下面几个任务: 开发服务契约:指定终结点可用的WCF服务的操作。 开发绑定:绑定指点终结点与外界通信的协议。 添加...

2726
来自专栏IT笔记

SpringBoot开发案例之配置Druid数据库连接池

前言 好久没有更新Spring Boot系列文章,你说忙么?也可能是,前段时间的关注点也许在其他方面了,最近项目中需要开发小程序,正好采用Spring Boot...

2644
来自专栏Winter漫聊技术

Retrofit进阶

什么是Retrofit? 这类文章太多了,这里就不多做介绍,贴个官方链接: http://square.github.io/retrofit/

782
来自专栏Kotlin入门系列

win7基础 cmd 查看当前已经启动的服务列表

1836
来自专栏高性能服务器开发

(三) 服务器端的程序架构介绍2

下面我们以pc端登录为例来具体看一个数据包在服务器端各个服务之间走过的流程: 步骤1:login_server初始化侦听socket,设置新连接到来的回调函数。...

3614

扫码关注云+社区