Redis的value序列化方式一般有两种:JSON方式和JDK方式
有以下几个序列化工具类:

第一次使用的是JDK方式进行测试
使用jdk方式需要pojo类实现Serializable接口
public void addByJDK() {
//随机生五万条消息的一个方法
List<User> list = randomUser();
long t1 = System.currentTimeMillis();
ListOperations<String, User> opsForList = redisTemplate.opsForList();
opsForList.leftPushAll("jdk", list);
long t2 = System.currentTimeMillis();
System.out.println("jdk方式序列化50000条数据:"+(t2-t1)+"毫秒");
}最终的结果为1224毫秒,第二次是使用JSON的序列化方式
public void addByJSON() {
//随机生五万条消息的一个方法
List<User> list = randomUser();
long t1 = System.currentTimeMillis();
ListOperations<String, User> opsForList = redisTemplate.opsForList();
opsForList.leftPushAll("json", list);
long t2 = System.currentTimeMillis();
System.out.println("ByJson:50000条:"+(t2-t1)+"毫秒");
}最终的结果为:452毫秒当然这两种方式都是直接将List存入redis,实际的redis长度只是1,得出的结果是JSON的方式优于JDK
最后测试存入hash,使用JDK序列化方式
public void addHash() {
//随机生成五万对象,map的key值为对象的id
Map<String, User> map = randomUsermap();
long t1 = System.currentTimeMillis();
HashOperations<String, Object, Object> opsForHash = redisTemplate.opsForHash();
opsForHash.putAll("hash", map);
long t2 = System.currentTimeMillis();
System.out.println("hash:50000条:"+(t2-t1)+"毫秒");
}最终的结果为650毫秒
















