最近因为公司业务需要, 要使用hbase在windows下用java代码操作虚拟机中的hbase时遇到一个奇怪的问题:
代码运行后不报错也不结束, 就是没有效果, 卡在那里
找了很多地方, 都没有效果
解决办法: 在windows的hosts文件中加上主机名和对应的ip地址, 问题立即解决:
192.168.159.170 cmaster.basichadoop.com
192.168.159.171 cslaver1.basichadoop.com
192.168.159.172 cslaver2.basichadoop.com
结论: 即使在eclipse中, hbase-site.xml中用的都是ip地址, 在hosts文件中依然要配一下
附上一段非常简单的向表中插入数据的代码:
public class Demo3 {
public static void main(String[] args) throws IOException {
Configuration conf = HBaseConfiguration.create();
Connection conn = ConnectionFactory.createConnection(conf);
Table table = conn.getTable(TableName.valueOf("table1"));
Put put=new Put(Bytes.toBytes("row1"));
put.addColumn(Bytes.toBytes("family1"), Bytes.toBytes("name1"), Bytes.toBytes("value1"));
table.put(put);
table.close();
conn.close();
}
}