zoukankan      html  css  js  c++  java
  • springboot整合redis

    在pom.xml中新增Redis相关依赖:

    <!--redis依赖配置-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-data-redis</artifactId>
    </dependency>

    在application.yml中添加Redis的配置及Redis中自定义key的配置:

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

    添加RedisService接口用于定义一些常用Redis操作:

    /**
     * redis操作Service,
     * 对象和数组都以json形式进行存储
     * Created by xc on 20190830
     */
    public interface RedisService {
        /**
         * 存储数据
         */
        void set(String key, String value);
    
        /**
         * 获取数据
         */
        String get(String key);
    
        /**
         * 设置超期时间
         */
        boolean expire(String key, long expire);
    
        /**
         * 删除数据
         */
        void remove(String key);
    
        /**
         * 自增操作
         * @param delta 自增步长
         */
        Long increment(String key, long delta);
    
    }

    注入StringRedisTemplate,实现RedisService接口:

    /**
     * redis操作Service的实现类
     * Created by xcon 20190830
     */
    @Service
    public class RedisServiceImpl implements RedisService {
        @Autowired
        private StringRedisTemplate stringRedisTemplate;
    
        @Override
        public void set(String key, String value) {
            stringRedisTemplate.opsForValue().set(key, value);
        }
    
        @Override
        public String get(String key) {
            return stringRedisTemplate.opsForValue().get(key);
        }
    
        @Override
        public boolean expire(String key, long expire) {
            return stringRedisTemplate.expire(key, expire, TimeUnit.SECONDS);
        }
    
        @Override
        public void remove(String key) {
            stringRedisTemplate.delete(key);
        }
    
        @Override
        public Long increment(String key, long delta) {
            return stringRedisTemplate.opsForValue().increment(key,delta);
        }
    }

    文章来源:https://macrozheng.github.io/mall-learning/#/architect/mall_arch_03

  • 相关阅读:
    Git 安装配置,key导入
    Android集成支付宝的坑
    RxJava 的使用入门
    RecyclerView 介绍 02 – 重要概念
    AndroidTips:selector的disable状态为什么无效?
    AndroidTips:解决Dialog全屏显示以及Dialog显示自动弹出输入法
    RecyclerView 介绍 01
    python模块-----sqlAlchemy
    python模块-----pyinstaller
    python模块------socket
  • 原文地址:https://www.cnblogs.com/ooo0/p/11434886.html
Copyright © 2011-2022 走看看