Java API操作hbase数据案例
- 使用addResource()方法
- 将habse安装目录(./hbase/conf/)下的habse.xml文件放置在项目根目录下,项目结构如下:
2 需修改windows的host地址,在hosts文件下添加
hdp3.site 192.168.×.×
hdp2.site 192.168.×.×
hdp1.site 192.168.×.×
hdp3.site,hdp2.site,hdp1.site为hbase对应的hadoop集群的host
3 具体代码
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.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.Put;
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.util.Bytes;
/**
* HBase 工具类
*/
@SuppressWarnings("deprecation")
public class HBaseUtil {
private static HBaseConfiguration conf = null;
static {
conf = new HBaseConfiguration();
conf.addResource("hbase-site.xml");
}
/**
* 建立表格
*
* @param tableName
* @param family
* 列簇数组
*
*/
@SuppressWarnings("resource")
public static void creatTable(String tableName, String[] family) {
try {
HBaseAdmin admin = new HBaseAdmin(conf);
HTableDescriptor desc = new HTableDescriptor(tableName.getBytes("utf-8"));
for (int i = 0; i < family.length; i++) {
desc.addFamily(new HColumnDescriptor(family[i]));
}