温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Spring Data Redis的功能及使用方法

发布时间:2021-06-26 13:56:24 来源:亿速云 阅读:208 作者:chen 栏目:大数据

这篇文章主要介绍“Spring Data Redis的功能及使用方法”,在日常操作中,相信很多人在Spring Data Redis的功能及使用方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Spring Data Redis的功能及使用方法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

SpringDataRedis是Spring大家族中的一部分,提供了在Spring应用中通过简单的配置访问redis服务,对redis底层开发包进行了高度封装,RedisTemplate提供了redis各种操作,异常处理及序列化,支持分布订阅,并对spring3.1cache进行了实现。

SpringDataRedis提供的功能:

1、连接池自动管理,提供了一个高度封装的RedisTemplate类

2、针对Jedis客户端中大量的API进行了归类封装,将同一类型操作封装为operation接口

ValueOperations:简单K-V操作

SetOperations:set类型数据操作

ZSetOperations:zset类型数据操作

HashOperations:针对map类型的数据操作

ListOperations:针对list类型的数据操作

入门案例:

1、导入依赖

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

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>

</dependency>

2、创建启动类

@SpringBootApplication
public class RedisApplication {
    public static void main(String[] args) {
        SpringApplication.run(RedisApplication.class);
    }
}

3、操作值类型

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

    @Autowired
    private RedisTemplate template;


    @Test
    public void setValue (){
        template.boundValueOps("name").set("lianbang.wu");
    }

    @Test
    public void getValue(){
        String str =(String) template.boundValueOps("name").get();
        System.out.println(str);
    }

    @Test
    public void deleteValue(){
        template.delete("name");
    }

}

4、操作set类型

@Test
public void setValue(){
    template.boundSetOps("nameset").add("读者1");
    template.boundSetOps("nameset").add("读者2");
    template.boundSetOps("nameset").add("读者3");
    
}

@Test
public void getValue(){
    Set members = template.boundSetOps("nameset").members();
    System.out.println(members);
}

@Test
public void deleteValue(){
    template.boundSetOps("nameset").remove("读者1");
}

@Test
public void deleteAll(){
    template.delete("nameset");
}

5、 操作List

@Test
 public void testSetValue(){
    template.boundListOps("namelist1").rightPush("读者1");
    template.boundListOps("namelist1").leftPush("读者2");
    
}

@Test
 public void testGetValue(){
    List namelist1 = template.boundListOps("namelist1").range(0, 10);
    System.out.println(namelist1);
}

@Test
 public void testSearechIndex(){
    Object namelist1 = template.boundListOps("namelist1").index(1);
    System.out.println(namelist1);
}

@Test
 public void testRemoveByIndex(){
    template.boundListOps("namelist1").remove(1,"读者1");
    
}

6、操作Hash类型

@Test
public void testSetValue(){
    template.boundHashOps("namehash").put("a","读者1");
    template.boundHashOps("namehash").put("b","读者2");
}

@Test
public void testGetKeys(){
    Set s = template.boundHashOps("namehash").keys();
    System.out.println(s);
}

@Test
public void testGetValue(){
    List values = template.boundHashOps("namehash").values();
    System.out.println(values);
}

@Test
public void testGetValueByKey(){
    Object o = template.boundHashOps("namehash").get("a");
    System.out.println(o);
}

@Test
public void testRemoveValueByKey(){
    template.boundHashOps("namehash").delete("b");
}

到此,关于“Spring Data Redis的功能及使用方法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI