我是hbase java api的新手,我需要将旧的hbase,0.94代码迁移到更新版本的hbase 1.2.6。从这个意义上讲,我已经意识到Scan.write()和Scan.readFields()方法在较新版本中不可用。
我查找了较旧的API,但我没有在任何已弃用的列表中看到过这些方法。在hbase 0.98中,这些方法不可用。我找不到合适的方法来替换它们。
我的scan.write代码基本上是这样的:
Scan scan = new Scan();
scan.addFamily(somefamily);
ByteArrayOutputStream out = new ByteArrayOutputStream();
DataOutputStream dos = new DataOutputStream(out);
try
{
scan.write(dos);//this is not available
}
catch (IOException e)
{
throw new IOException();
}
return Base64.encodeBytes(out.toByteArray());
我的scan.readfields代码是这样的:
ByteArrayInputStream bis = new ByteArrayInputStream(Base64.decode(conf.get(SCAN)));
DataInputStream dis = new DataInputStream(bis);
scan = new Scan();
scan.readFields(dis)
感谢任何帮助,谢谢。
答案 0 :(得分:0)
您的问题的答案可以Migrate java code from hbase 0.92 to 0.98.0-hadoop2。此外,您需要添加hbase协议库以访问this.router.navigate(['/userdetails']);
^ ^
类。