.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

package cn.com.gzkit.hbase; 
 
import java.io.IOException; 
import java.util.ArrayList; 
import java.util.List; 
import org.apache.hadoop.conf.Configuration; 
import org.apache.hadoop.hbase.HBaseConfiguration; 
import org.apache.hadoop.hbase.HColumnDescriptor; 
import org.apache.hadoop.hbase.HTableDescriptor; 
import org.apache.hadoop.hbase.KeyValue; 
import org.apache.hadoop.hbase.MasterNotRunningException; 
import org.apache.hadoop.hbase.ZooKeeperConnectionException; 
import org.apache.hadoop.hbase.client.Delete; 
import org.apache.hadoop.hbase.client.Get; 
import org.apache.hadoop.hbase.client.HBaseAdmin; 
import org.apache.hadoop.hbase.client.HTable; 
import org.apache.hadoop.hbase.client.Result; 
import org.apache.hadoop.hbase.client.ResultScanner; 
import org.apache.hadoop.hbase.client.Scan; 
import org.apache.hadoop.hbase.client.Put; 
import org.apache.hadoop.hbase.util.Bytes; 
 
public class HBaseBasic {    
    private static Configuration conf = null;         
    static { 
        Configuration HBASE_CONFIG = new Configuration(); 
        //hbase/conf/hbase-site.xmlhbase.zookeeper.quorum  
        HBASE_CONFIG.set("hbase.zookeeper.quorum", "192.168.1.1");         
        //hbase/conf/hbase-site.xmlhbase.zookeeper.property.clientPort 
        HBASE_CONFIG.set("hbase.zookeeper.property.clientPort", "2181"); 
        conf = HBaseConfiguration.create(HBASE_CONFIG);
    }     
 
 
    public static void creatTable(String tableName, String[] familys) throws Exception { 
        HBaseAdmin admin = new HBaseAdmin(conf);         
        if (admin.tableExists(tableName)) { 
            System.out.println("table already exists!");         
        } else { 
            HTableDescriptor tableDesc = new HTableDescriptor(tableName); 
            for(int i=0; i<familys.length; i++){ 
                tableDesc.addFamily(new HColumnDescriptor(familys[i]));             
            }
            
            admin.createTable(tableDesc); 
            System.out.println("create table " + tableName + " ok.");         
        }      
    }        
    
    public static void deleteTable(String tableName) throws Exception {        
        try { 
            HBaseAdmin admin = new HBaseAdmin(conf);         
            admin.disableTable(tableName);         
            admin.deleteTable(tableName); 
            System.out.println("delete table " + tableName + " ok.");        
        } catch (MasterNotRunningException e) {         
            e.printStackTrace(); 
        } catch (ZooKeeperConnectionException e) {         
            e.printStackTrace();        
        }     
    } 
    
    public static void addRecord (String tableName, String rowKey, String family, String qualifier, String value)       throws Exception{      
        try { 
            HTable table = new HTable(conf, tableName);       
            Put put = new Put(Bytes.toBytes(rowKey)); 
            put.add(Bytes.toBytes(family),Bytes.toBytes(qualifier),Bytes.toBytes(value)); 
            table.put(put); 
            System.out.println("insert recored " + rowKey + " to table " + tableName +" ok."); 
        } catch (IOException e) {       
            e.printStackTrace(); 
        }     
    } 
 
    public static void delRecord (String tableName, String rowKey) throws IOException{ 
        HTable table = new HTable(conf, tableName);      
        List list = new ArrayList(); 
        Delete del = new Delete(rowKey.getBytes());      
        list.add(del); 
        table.delete(list); 
        System.out.println("del recored " + rowKey + " ok.");     
    }         
    
    public static void getOneRecord (String tableName, String rowKey) throws IOException{ 
        HTable table = new HTable(conf, tableName);      
        Get get = new Get(rowKey.getBytes());      
        Result rs = table.get(get);      
        for(KeyValue kv : rs.raw()){ 
            System.out.print(new String(kv.getRow()) + " " );       
            System.out.print(new String(kv.getFamily()) + ":" );       
            System.out.print(new String(kv.getQualifier()) + " " );       
            System.out.print(kv.getTimestamp() + " " );       
            System.out.println(new String(kv.getValue()));      
        }     
    }         
    
    public static void getAllRecord (String tableName) {      
        try{ 
            HTable table = new HTable(conf, tableName);           
            Scan s = new Scan(); 
            ResultScanner ss = table.getScanner(s);           
            for(Result r:ss){ 
                for(KeyValue kv : r.raw()){ 
                    System.out.print(new String(kv.getRow()) + " ");               
                    System.out.print(new String(kv.getFamily()) + ":");               
                    System.out.print(new String(kv.getQualifier()) + " ");               
                    System.out.print(kv.getTimestamp() + " "); 
                    System.out.println(new String(kv.getValue()));               
                }           
            } 
        } catch (IOException e){       
            e.printStackTrace(); 
        }     
    }    
    
    public static void  main (String [] agrs) {   
        try { 
            String tablename = "student"; 
            String[] familys = {"id", "name","score"};    //HBaseBasic.creatTable(tablename, familys);     
            //add record zkb 
            //HBaseBasic.addRecord(tablename,"2","id","","095832");    //HBaseBasic.addRecord(tablename,"2","name","","zmac");    //HBaseBasic.addRecord(tablename,"2","score","math","97");    //HBaseBasic.addRecord(tablename,"2","score","chinese","87");    //HBaseBasic.addRecord(tablename,"2","score","english","85");    //add record  baoniu     
            System.out.println("===========get one record========");
            HBaseBasic.getOneRecord(tablename, "2");     
            System.out.println("===========show all record========");    
            HBaseBasic.getAllRecord(tablename);     
            System.out.println("===========del one record========");    
            HBaseBasic.delRecord(tablename, "2");    
            HBaseBasic.getAllRecord(tablename);     
        } catch (Exception e) {    
            e.printStackTrace();   
        }  
    } 
    
    
} 
 

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

运行会,你将看到首先创建数据库student,其字段为
id,name,score{english,math,chinese},然后向该数据表插入数据,再查询记录,删除记录等

hbase使用-java操作的更多相关文章

  1. HBase(2) Java 操作 HBase 教程

    目录 一.简介 二.hbase-client 引入 三.连接操作 四.表操作 五.运行测试 FAQ 参考文档 一.简介 在上一篇文章 HBase 基础入门 中,我们已经介绍了 HBase 的一些基本概 ...

  2. HBase的java操作,最新API。(查询指定行、列、插入数据等)

    关于HBase环境搭建和HBase的原理架构,请见笔者相关博客. 1.HBase对java有着较优秀的支持,本文将介绍如何使用java操作Hbase. 首先是pom依赖: <dependency ...

  3. 【hbase】——Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询

    1.搭建环境 新建JAVA项目,添加的包有: 有关Hadoop的hadoop-core-0.20.204.0.jar 有关Hbase的hbase-0.90.4.jar.hbase-0.90.4-tes ...

  4. Java 操作 HBase 教程

    Java 操作 HBase 教程 一.简介 二.hbase-client 引入 三.连接操作 四.表操作 五.运行测试 相关博文原文地址: 博客园:美码师:HBase(2) Java 操作 HBase ...

  5. Hbase深入学习(六) Java操作HBase

    Hbase深入学习(六) ―― Java操作HBase 本文讲述如何用hbase shell命令和hbase java api对hbase服务器进行操作. 先看以下读取一行记录hbase是如何进行工作 ...

  6. Java操作hbase总结

    用过以后,总得写个总结,不然,就忘喽. 一.寻找操作的jar包. java操作hbase,首先要考虑到使用hbase的jar包. 因为咱装的是CDH5,比较方便,使用SecureCRT工具,远程连接到 ...

  7. HBase篇--HBase操作Api和Java操作Hbase相关Api

    一.前述. Hbase shell启动命令窗口,然后再Hbase shell中对应的api命令如下. 二.说明 Hbase shell中删除键是空格+Ctrl键. 三.代码 1.封装所有的API pa ...

  8. java操作Hbase实例

    所用HBase版本为1.1.2,hadoop版本为2.4 /* * 创建一个students表,并进行相关操作 */ import java.io.IOException; import java.u ...

  9. HBase之四--(1):Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询

    1.搭建环境 新建JAVA项目,添加的包有: 有关Hadoop的hadoop-core-0.20.204.0.jar 有关Hbase的hbase-0.90.4.jar.hbase-0.90.4-tes ...

随机推荐

  1. qt外部数据传入实现动态的折线图绘制

    在嵌入式开发中,实现数据收集与显示很常见,对于希望数据稳定的应用来说,               折现图的表现形式很符合条件.               本实现是通过qt的signal-slot来 ...

  2. Android:改变Activity切换方式

    overridePendingTransition(enterAnim, exitAnim); Intent intent =new Intent(this,item2.class); startAc ...

  3. HDU 2836 Traversal 简单DP + 树状数组

    题意:给你一个序列,问相邻两数高度差绝对值小于等于H的子序列有多少个. dp[i]表示以i为结尾的子序列有多少,易知状态转移方程为:dp[i] = sum( dp[j] ) + 1;( abs( he ...

  4. Altium designer总结

    itwolf原创文章,转载请注明出处 大概有半年没有画过PCB板了,最近突然又要画一个简单的小板子,却发现好多东西已经不是很熟练了,现在把Altium designer软件的使用中要注意的问题和一些小 ...

  5. POJ2796 单调队列

    Feel Good Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 8041   Accepted: 2177 Case Ti ...

  6. Nlog Layout

    Nlog.config <targets>     <target type="Console" name="trace" layout=&q ...

  7. RecyclerView 结合 CardView 使用(二)

    上一篇的基础上,修改了,CardView的布局和点击效果 总结: CardView的奇葩属性 :app:cardPreventCornerOverlap="false" 和园角边框 ...

  8. HDU 5313 Bipartite Graph (二分图着色,dp)

    题意: Soda有一个n个点m条边的二分图, 他想要通过加边使得这张图变成一个边数最多的完全二分图. 于是他想要知道他最多能够新加多少条边. 注意重边是不允许的. 思路: 先将二分图着色,将每个连通分 ...

  9. 【C#学习笔记】类构造函数使用

    using System; namespace ConsoleApplication { class stu { private string name; private int age; publi ...

  10. ASP.NET MVC模型部分验证

    在很多情况下,我们为了代码的复用可能会存在ViewModel共用的情形.比方说,web应用中常常会遇到的一个需求就是用户找回密码的功能.用户首先要验证通过验证邮箱(通常是用户名)来获取验证码,然后再进 ...