Java使用Jedis整合Redis和使用RedisTemplate整合Redis

使用Jedis整合:

一、引入maven依赖

<dependency>
   <groupId>redis.clients</groupId>
   <artifactId>jedis</artifactId>
   <version>3.6.0</version>
</dependency>
<dependency>
   <groupId>junit</groupId>
   <artifactId>junit</artifactId>
   <version>4.12</version>
   <scope>test</scope>
</dependency>

二、创建test类,连接Redis,String类型测试,其它类型的操作自行编写

package org.example.Test;

import org.junit.After;
import org.junit.Before;
import redis.clients.jedis.Jedis;

public class RedisTest {
    Jedis jedis;

    @Before
    public void init() {
        //第一个参数是ip地址,第二个参数是端口
        Jedis jedis = new Jedis("192.168.6.90", 6379);
    }

    public void stringTest() {
        //设置一个key
        jedis.set("k1", "v1");
        //设置一个key
        jedis.set("k2", "1");
        //获取一个key
        String res = jedis.get("k1");
        //对某一个key自增
        Long ires = jedis.incr("k2");
    }
@After
    public void close(){
        //关闭jedis连接
        jedis.close();
    }
}

使用RedisTemplate整合:

一、添加maven依赖

 <dependencies>
     <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-data-redis-reactive</artifactId>
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
     </dependency>
     <dependency>
       <groupId>org.projectlombok</groupId>
       <artifactId>lombok</artifactId>
       <optional>true</optional>
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-test</artifactId>
       <scope>test</scope>
     </dependency>
     <dependency>
       <groupId>io.projectreactor</groupId>
       <artifactId>reactor-test</artifactId>
       <scope>test</scope>
     </dependency>
   </dependencies>

二、配置application.yml文件

#Redis服务器连接地址
spring:
  redis:
    host: 192.168.6.90
  #Redis服务器连接端口
    port: 6379
  #连接池最大连接数(使用负值表示没有限制)
    pool:
     max-active: 8
  #连接池最大阻塞等待时间(使用负值表示没有限制)
     max-wait: -1
  #连接池中的最大空闲连接
     max-idle: 8
  #连接池中的最小空闲连接
     min-idle: 0
  #连接超时时间(毫秒)
  timeout: 30000

三、自定义序列化

/**
 * 自定义序列化方式
 */
@Configuration
public class RedisConfig {
   @Bean
   public RedisTemplate<String,Object> redisTemplate(RedisConnectionFactory redisConnectionFactory){
     RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
     redisTemplate.setKeySerializer(new StringRedisSerializer());
     redisTemplate.setValueSerializer(new GenericJackson2JsonRedisSerializer());
     redisTemplate.setHashKeySerializer(new StringRedisSerializer());
     redisTemplate.setHashValueSerializer(new GenericJackson2JsonRedisSerializer());
     redisTemplate.setConnectionFactory(redisConnectionFactory);
     return redisTemplate;
   }
}

四、使用使用redisTemplate进行各类型的CURD操作

public boolean set(String key,Object value){
   try{
   redisTemplate.opsForValue().set(key,value);
       return true;
     }catch (Exception e){
       log.error("redis set value exception:{}",e);
       return false;
     }
   }

 public Object get(String key){
     return  key == null ? null : redisTemplate.opsForValue().get(key);
   }



public boolean setex(String key,Object value,long expire){
    try{
      //TimeUnit.SECONDS指定类型为秒
      redisTemplate.opsForValue().set(key,value,expire,       TimeUnit.SECONDS);
      return true;
     }catch (Exception e){
      log.error("redis set value and expire exception:{}",e);
      return false;
     }
   }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值