zoukankan      html  css  js  c++  java
  • 根据Rowkey从HBase中查询数据

        /**
         * @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;
        }
  • 相关阅读:
    查看数据库错误日志的位置
    快速过滤出完整的SQL语句
    使用apidocJs快速生成在线文档
    vs开发nodejs系列之 修改新建js文件的模板
    Node.js 入门资料
    ECMAScript 6 学习资料
    NodeJS学习目录
    MongoDB学习笔记系列~目录
    sails ORM组件 Waterline v0.10 英文文档
    node.js---sails项目开发
  • 原文地址:https://www.cnblogs.com/sixiweb/p/3390827.html
Copyright © 2011-2022 走看看