List<String> list = new ArrayList<>();
list.add("1");
list.add("2");
list.add("3");
list.add("4");
redistemplate.opsForList().rightPushAll("test", list);
System.out.println("数据为: "+redistemplate.opsForList().range("test", 0, -1));
数据为: [ [ 1,2,3,4] ]
长度是1 为啥我看其他人也是这样添加不会这样,求解.
经过测试没有出现你这个问题哦
你点击进去
redistemplate.opsForList().range
看看range返回的数据类型,同时看看你的版本号,
比如我的
public List<V> range(K key, final long start, final long end)
public Long rightPushAll(K key, V... values)
断点打在 DefaultListOperations的rightPushAll 看看 values的数据类型
然后断点打在 DefaultListOperations 的range 上面debug 看看返回的数据类型
@RunWith(SpringRunner.class)
@SpringBootTest
public class Test {
@Autowired
private RedisTemplate redisTemplate;
@Autowired
private StringRedisTemplate stringRedisTemplate;
@Test
public void test() {
List<String> list = new ArrayList<>();
list.add("1");
list.add("2");
list.add("3");
list.add("4");
stringRedisTemplate.opsForList().rightPushAll("testx", list);
System.out.println("数据为: " + stringRedisTemplate.opsForList().range("testx", 0, -1));
}
}
运行结果:
数据为: [1, 2, 3, 4]