MapReduce 要用到的知识
IO的随机读取数据:
获取文件输入流 new FileInputStresm(“d://”) 读取数据 ;fs.read() ; fs.skip(2L)跳过指定字节 ; fs.write 支持随机读不支持随机写 ; 打印sout;
序列化:
本质是对象转二进制的规则(java的序列化实现接口)
new ObjectOutputStream(new FileOutputStresm((“d://”))
自定义序列化实现指定数据传输,减少冗余
oos.writeInt(user.getId);…写出
ois.readInt();读回
*把读写封装成方法:写一个自定义的接口,
里面是读写方法 public voie write(oos)
bean实现该接口并且重写write和read方法就实现了自定义序列化
迭代器:
解决绝密数据的读取(迭代器内部对数据进行处理,去除加密部分)
这样只需提供读方法
自定义迭代器实现Iteratot接口重写hasNext()和next()方法中的解析逻辑
优点:一次迭代就可以遍历出所有Json形式存的对象,不行存入list中,遍历一次就得new一个对象