【HBase】Java API - 向表中插入数据

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.client.Connection;
import org.apache.hadoop.hbase.client.ConnectionFactory;
import org.apache.hadoop.hbase.client.Put;
import org.apache.hadoop.hbase.client.Table;
import org.junit.Test;

import java.io.IOException;

public class HbaseOperater {
    /**
     * 1.获取连接
     * 2.指定目标表
     * 3.操作Put对象
     * 例如:向myuser表中插入name,age,id,address等数据
     */
    @Test
    public void addData() throws IOException {
        //获取连接
        Configuration configuration = HBaseConfiguration.create();
        configuration.set("hbase.zookeeper.quorum", "node01:2181,node02:2181,node03:2181");
        Connection connection = ConnectionFactory.createConnection(configuration);
        //指定目标表
        Table table = connection.getTable(TableName.valueOf("myuser"));
        //操作Put对象
        Put put = new Put("rk0001".getBytes()); //指定rowkey
        put.addColumn("f1".getBytes(), "name".getBytes(), "Tom".getBytes());
        put.addColumn("f1".getBytes(), "age".getBytes(), "18".getBytes());
        put.addColumn("f1".getBytes(), "id".getBytes(), "2020".getBytes());
        put.addColumn("f1".getBytes(), "address".getBytes(), "shandong".getBytes());
        //加载数据
        table.put(put);
        //关闭连接
        table.close();
        connection.close();
    }
}

hbase(main):003:0> get ‘myuser’,‘rk0001’,‘f1’
COLUMN                     CELL                                                                       
 f1:address                timestamp=1581776436973, value=shandong                                    
 f1:age                    timestamp=1581776436973, value=18                                          
 f1:id                     timestamp=1581776436973, value=2020                                        
 f1:name                   timestamp=1581776436973, value=Tom

你可能感兴趣的:(HBase)