在Java中操作Redis_Spring Data Redis使用方式——环境搭建

在Java中操作Redis_Spring Data Redis使用方式——环境搭建

  1. 导入依赖
   <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
  </dependency>
  1. 配置连接redis ,在配置文件中,下面ym格式
spring:
  redis:
    host: localhost
    password: 123456
    port: 6349
    database: 10   //可以设置 默认
  1. 编写配置文件
import lombok.extern.slf4j.Slf4j;
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.RedisTemplate;
import org.springframework.data.redis.serializer.StringRedisSerializer;

@Configuration
@Slf4j
public class RedisConfiguration {

    @Bean
    public RedisTemplate redisTemplate(RedisConnectionFactory redisConnectionFactory){
        log.info("开始创建redis模板对象");
        RedisTemplate redisTemplate = new RedisTemplate();
        //设置redis连接工厂对象
        redisTemplate.setConnectionFactory(redisConnectionFactory);
        //设置redis key的序列化器
        redisTemplate.setKeySerializer(new StringRedisSerializer());
        return redisTemplate;

    }
}
  1. test 已经加入了IOC管理
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
public class TestCollection {

    @Autowired
    private RedisTemplate redisTemplate;

       @Test
    public void test(){
        System.out.println("目标: "+redisTemplate);
        //string  set setex setnx
        ValueOperations operations = redisTemplate.opsForValue();
        operations.set("name","dpy");
        //String
        redisTemplate.opsForValue().set("name","dpy");
        System.out.println(redisTemplate.opsForValue().get("name"));
        redisTemplate.opsForValue().set("id","4314",1, TimeUnit.MINUTES);
        //hash
        redisTemplate.opsForHash().put("班级","name","lyy");
        redisTemplate.opsForHash().put("班级","age","18");
        System.out.println("hash : "+redisTemplate.opsForHash().keys("班级"));
        //list
        redisTemplate.opsForList().leftPush("list1","a");
        redisTemplate.opsForList().leftPush("list1","b");
        redisTemplate.opsForList().leftPush("list1","c");
        System.out.println("list1: "+redisTemplate.opsForList().size("list1"));
        System.out.println("list1: "+redisTemplate.opsForList().range("list1",0,-1));

        //set
        redisTemplate.opsForSet().add("class","1a");
        redisTemplate.opsForSet().add("class","2a");
        redisTemplate.opsForSet().add("class","3a");
        redisTemplate.opsForSet().add("class","4a");
        System.out.println("set: "+redisTemplate.opsForSet().size("class"));
        System.out.println("set: "+redisTemplate.opsForSet().members("class"));

        //zset
        redisTemplate.opsForZSet().add("排行","李白",15);
        redisTemplate.opsForZSet().add("排行","杜甫",5);
        redisTemplate.opsForZSet().add("排行","白居易",10);
    }
}

你可能感兴趣的:(java,redis,spring)