• springboot 集成redis


    1.作用

    • 提升系统的运行效率
    • 简化缓存的使用

    2集成

    2.1导入需要的包

    包括jedis,spring-data-redis以及jackson(在将对象序列化保存到redis中需要) 

    1.pom.xml

    1. <dependency>
    2. <groupId>org.springframework.bootgroupId>
    3. <artifactId>spring-boot-starter-data-redisartifactId>
    4. dependency>
    5. <dependency>
    6. <groupId>redis.clientsgroupId>
    7. <artifactId>jedisartifactId>
    8. <version>3.3.0version>
    9. dependency>

    2. application.properties

    1. # -------------------- redis config B -------------------------
    2. # Redis数据库索引(默认为0
    3. spring.redis.database=0
    4. # Redis服务器地址
    5. spring.redis.host=192.168.0.24
    6. # Redis服务器连接端口
    7. spring.redis.port=6379
    8. # Redis服务器连接密码(默认为空)
    9. spring.redis.password=
    10. # 连接池最大连接数(使用负值表示没有限制)
    11. spring.redis.jedis.pool.max-active=100
    12. # 连接池最大阻塞等待时间(使用负值表示没有限制)
    13. spring.redis.jedis.pool.max-wait=-1ms
    14. # 连接池中的最大空闲连接
    15. spring.redis.jedis.pool.max-idle=10
    16. # 连接池中的最小空闲连接
    17. spring.redis.jedis.pool.min-idle=0
    18. # 连接超时时间(毫秒)
    19. spring.redis.jedis.timeout=1000
    20. # -------------------- redis config E -------------------------

    3.在resources目录下建立readis.properties

    1. redis.host=localhost
    2. redis.port=6379
    3. redis.maxIdle=100
    4. redis.maxTotal=100
    5. redis.maxWaitMillis=6000
    6. redis.testOnBorroW=true

    4.建立CacheConfig

    1. package com.huamei.sbdome01.config;
    2. import org.springframework.context.annotation.Bean;
    3. import org.springframework.data.redis.connection.RedisConnectionFactory;
    4. import org.springframework.data.redis.core.RedisTemplate;
    5. import org.springframework.data.redis.core.StringRedisTemplate;
    6. import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer;
    7. import org.springframework.data.redis.serializer.StringRedisSerializer;
    8. public class CacheConfig {
    9. @Bean
    10. public RedisTemplate redisTemplate(RedisConnectionFactory cf) {
    11. RedisTemplate redisTemplate = new RedisTemplate<>();
    12. redisTemplate.setConnectionFactory(cf);
    13. GenericJackson2JsonRedisSerializer genericJackson2JsonRedisSerializer = new GenericJackson2JsonRedisSerializer();
    14. redisTemplate.setKeySerializer(new StringRedisSerializer());
    15. redisTemplate.setValueSerializer(genericJackson2JsonRedisSerializer);
    16. redisTemplate.setHashKeySerializer(new StringRedisSerializer());
    17. redisTemplate.setHashValueSerializer(genericJackson2JsonRedisSerializer);
    18. return redisTemplate;
    19. }
    20. @Bean
    21. public StringRedisTemplate stringRedisTemplate(RedisConnectionFactory factory) {
    22. StringRedisTemplate stringRedisTemplate = new StringRedisTemplate();
    23. stringRedisTemplate.setConnectionFactory(factory);
    24. return stringRedisTemplate;
    25. }
    26. }

    这时候我们已经完成redis的集成了

    测试

    下面我们在编写一个controller用于测试

    1. /**
    2. * 用于测试redis集成
    3. * @author Administrator
    4. * @create 2019-12-1822:16
    5. */
    6. @RestController
    7. public class RedisTestController {
    8. @Resource
    9. private RedisTemplate redisTemplate;
    10. @RequestMapping(value = "/redis")
    11. public Object redis() {
    12. String name = "redis test";
    13. redisTemplate.opsForValue().set("redisTest", name);
    14. Map map = new HashMap<>();
    15. map.put("code", 1);
    16. map.put("msg", "操作成功");
    17. return map;
    18. }
    19. }

  • 相关阅读:
    Kitchen Racks
    『Java安全』Struts 2.3.14.2 action占位符OGNL注入漏洞S2-015复现与浅析
    系列文章|云原生时代下微服务架构进阶之路 - Spring
    huggingface 自定义模型finetune训练测试--bert多任务
    为什么要用 B+ 树,而不用普通二叉树?
    lambda处理异常四种方式
    【MATLAB教程案例11】基于PSO粒子群优化算法的函数极值计算matlab仿真及其他应用
    NAOMI代码详解
    2022年金九银十,秋招Java后端开发最全面试攻略,卷对方向,才拿得到心仪的大厂offer
    软件工程:墨菲定律,潜在问题管理的艺术
  • 原文地址:https://blog.csdn.net/weixin_67150631/article/details/127861741