package com.lhh.hbaseapi;
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.TableName;
import org.apache.hadoop.hbase.client.*;
public class HBaseJavaApi {
public static void main(String[] args) {
createTbale();
insertIntoTable();
getTable();
}
public static void createTbale() {
Configuration conf = HBaseConfiguration.create();
conf.set("hbase.zookeeper.quorum", "主机ip");
conf.set("hbase.zookeeper.property.clientPort", "2181");
conf.set("hbase.master", "主机ip:16000");
Connection connection = null;
Admin admin = null;
try {
connection = ConnectionFactory.createConnection(conf);
admin = connection.getAdmin();
if (admin.isTableAvailable(TableName.valueOf("testcustomer1"))) {
admin.disableTable(TableName.valueOf("testcustomer1"));
admin.deleteTable(TableName.valueOf("testcustomer1"));
System.out.println("删除成功");
}
HTableDescriptor customer = new HTableDescriptor(TableName.valueOf("testcustomer1"));
customer.addFamily(new HColumnDescriptor("personalInfo"));
customer.addFamily(new HColumnDescriptor("recordInfo"));
customer.addFamily(new HColumnDescriptor("assetsInfo"));
admin.createTable(customer);
System.out.println("创建成功");
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
admin.close();
connection.close();
System.out.println("关闭资源");
} catch (Exception e) {
e.printStackTrace();
}
}
}
public static void insertIntoTable() {
Configuration conf = HBaseConfiguration.create();
conf.set("hbase.zookeeper.quorum", "192.168.126.135");
conf.set("hbase.zookeeper.property.clientPort", "2181");
conf.set("hbase.master", "192.168.126.135:16000");
Connection connection = null;
Admin admin = null;
Table table = null;
try {
connection = ConnectionFactory.createConnection(conf);
admin = connection.getAdmin();
if (admin.tableExists(TableName.valueOf("testcustomer1"))) {
table = connection.getTable(TableName.valueOf("testcustomer1"));
Put put_key = new Put("1001_lhh".getBytes());
Put put_column1 = put_key.addColumn("personalInfo".getBytes(), "id".getBytes(), "1001".getBytes());
Put put_column2 = put_key.addColumn("recordInfo".getBytes(), "id".getBytes(), "1001".getBytes());
Put put_column3 = put_key.addColumn("assetsInfo".getBytes(), "id".getBytes(), "1001".getBytes());
table.put(put_key);
System.out.println("添加数据完成");
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
table.close();
admin.close();
connection.close();
System.out.println("关闭资源");
} catch (Exception e) {
e.printStackTrace();
}
}
}
public static void getTable() {
Configuration conf = HBaseConfiguration.create();
conf.set("hbase.zookeeper.quorum", "192.168.126.135");
conf.set("hbase.zookeeper.property.clientPort", "2181");
conf.set("hbase.master", "192.168.126.135:16000");
Connection connection = null;
Admin admin = null;
Table table = null;
try {
connection = ConnectionFactory.createConnection(conf);
admin = connection.getAdmin();
if (admin.tableExists(TableName.valueOf("testcustomer1"))) {
table = connection.getTable(TableName.valueOf("testcustomer1"));
Get get = new Get("1001_lhh".getBytes());
Result result = table.get(get);
byte[] value = result.getValue("personalInfo".getBytes(), "id".getBytes());
System.out.println("获取值-->"+new String(value));
byte[] value1 = result.getValue("recordInfo".getBytes(), "id".getBytes());
System.out.println("获取值1-->"+new String(value1));
byte[] value2 = result.getValue("assetsInfo".getBytes(), "id".getBytes());
System.out.println("获取值2-->"+new String(value2));
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
table.close();
admin.close();
connection.close();
System.out.println("关闭资源");
} catch (Exception e) {
e.printStackTrace();
}
}
}
}