ListTest.java 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. import org.example.Main;
  2. import org.junit.jupiter.api.Test;
  3. import org.springframework.beans.factory.annotation.Autowired;
  4. import org.springframework.boot.test.context.SpringBootTest;
  5. import org.springframework.data.redis.core.RedisTemplate;
  6. import java.util.List;
  7. import java.util.Set;
  8. @SpringBootTest(classes = Main.class)
  9. public class ListTest {
  10. @Autowired
  11. private RedisTemplate<String,String> redisTemplate;
  12. //增加
  13. @Test
  14. public void testAdd(){
  15. //从左边添加一个元素
  16. redisTemplate.opsForList().leftPush("students","zhangshan");
  17. //从左边添加多个元素 不能添加多个?
  18. redisTemplate.opsForList().leftPush("students","lishi","wangwu");
  19. //从右边添加一个元素
  20. redisTemplate.opsForList().rightPush("students","zhangshan1");
  21. //从右边添加多个元素 不能添加多个?
  22. redisTemplate.opsForList().rightPush("students","lishi1","wangwu1");
  23. System.out.println(redisTemplate.opsForList().range("students", 0, -1));
  24. }
  25. @Test
  26. public void testFind(){
  27. //根据key和元素索引进行查询
  28. //0和正数代表从左边开始
  29. //负数代表从右边开始
  30. String students = redisTemplate.opsForList().index("students", 1);
  31. System.out.println(students);
  32. String students1 = redisTemplate.opsForList().index("students", -1);
  33. System.out.println(students1);
  34. //范围查询
  35. //根据key 【start,end】 包括首尾
  36. List<String> students2 = redisTemplate.opsForList().range("students", 0, 2);
  37. for (String s : students2) {
  38. System.out.println(s);
  39. }
  40. }
  41. //删除
  42. @Test
  43. public void testRemove(){
  44. //从左边删除第一个元素
  45. String s = redisTemplate.opsForList().leftPop("students");
  46. //从右边删除第一个元素
  47. String s1 = redisTemplate.opsForList().rightPop("students");
  48. //count > 0; 删除左边起第几个等于指定值的元素
  49. //count < 0; 删除右边起第几个等于指定值的元素
  50. //count = 0; 删除所有等于value的元素
  51. //删除左边起第二个wangwu
  52. redisTemplate.opsForList().remove("students",0,"zhangshan1");
  53. redisTemplate.opsForList().remove("students",0,"zhangshan");
  54. System.out.println(redisTemplate.opsForList().range("students", 0, -1));
  55. }
  56. }