根据Rowkey从HBase中查询数据
2013-10-27 14:18
381 查看
/** * @Title: queryData * @Description: 从HBase查询出数据 * @author xxxx * @param tableName * 表名 * @param rowkey * rowkey * @return 返回用户信息的list * @throws IOException * @throws UnsupportedEncodingException */ public static ArrayList<xxxxUserInfo> queryData(String tableName, String rowkey) throws IOException, UnsupportedEncodingException { ArrayList<xxxxUserInfo> list = new ArrayList<xxxxUserInfo>(); Configuration config = SignHBase.getConfiguration(); HTable table = new HTable(config, tableName); Get get = new Get(rowkey.getBytes()); // 根据主键查询 Result r = table.get(get); KeyValue[] kv = r.raw(); xxxxUserInfo xxxxUserInfo = new xxxxUserInfo(); for (int i = 0; i < kv.length; i++) { // 循环每一列 String qualifier = new String(kv[i].getQualifier()); if (qualifier.equals("n")) { String val = new String(kv[i].getValue()); xxxxUserInfo.setName(val); } else if (qualifier.equals("b")) { String val = new String(kv[i].getValue()); xxxxUserInfo.setBirthday(val); } else if (qualifier.equals("a")) { String val = new String(kv[i].getValue()); xxxxUserInfo.setAddress(val); } else if (qualifier.equals("z")) { String val = new String(kv[i].getValue()); xxxxUserInfo.setZip(val); } else if (qualifier.equals("f")) { String val = new String(kv[i].getValue()); xxxxUserInfo.setFax(val); } else if (qualifier.equals("cid")) { String val = new String(kv[i].getValue()); xxxxUserInfo.setCtfid(val); } else if (qualifier.equals("m")) { String val = new String(kv[i].getValue()); xxxxUserInfo.setMobile(val); } else if (qualifier.equals("t")) { String val = new String(kv[i].getValue()); xxxxUserInfo.setTel(val); } else if (qualifier.equals("e")) { String val = new String(kv[i].getValue()); xxxxUserInfo.setEmail(val); } else if (qualifier.equals("g")) { String val = new String(kv[i].getValue()); xxxxUserInfo.setGender(val); } else if (qualifier.equals("n")) { String val = new String(kv[i].getValue()); xxxxUserInfo.setNationality(val); } else if (qualifier.equals("ct")) { String val = new String(kv[i].getValue()); xxxxUserInfo.setCtftp(val); } }// end of 遍历每一列 list.add(xxxxUserInfo);// 将查询到的结果写入List中 return list; }
相关文章推荐
- hadoop之根据Rowkey从HBase中查询数据
- hbase RowFilter如何根据rowkey查询以及实例实现代码
- hbase RowFilter如何根据rowkey查询以及实例实现代码
- hbase中根据Rowkey后缀进行查询
- hbase表数据的写入流程:(根据rowkey进行写入)
- hbase表数据的读流程:(根据rowkey读)
- HBase根据Rowkey批量查询数据JAVA API(一次查多条,返回多个记录)
- hbase RowFilter如何根据rowkey查询以及实例实现代码 habase模糊查询【转】
- Hbase根据rowkey利用scan查询
- Hbase初始化并根据RowKey获取数据
- Hbase如何根据列值来查询整条数据
- Hbase 行键设计(rowkey) 实现多条件查询
- 大数据性能调优之HBase的RowKey设计
- hbase查询一条数据的过程(转)
- 查询语句块范例 SQL 根据分组列 拼接其他列数据
- Oracle根据经纬度查询一定范围内的数据
- mysql根据字段查询数据库中的存在该字段的所有数据表
- 大数据性能调优之HBase的RowKey设计
- python操作mongodb根据_id查询数据的实现方法
- sql根据时间查询数据