Java 向Hbase表插入数据报(org.apache.hadoop.hbase.client.HTablePool$PooledHTable cannot be cast to org.apac),hbasehtablepool


org.apache.hadoop.hbase.client.HTablePool$PooledHTable cannot be cast to org.apac


代码:


//1.create HTablePool

HTablePool hp=new HTablePool(con, 1000);

//2.get HTable from HTablepool

HTable ht=(HTable)hp.getTable(tName);


原因:如今应用的api版本中pool.getTable返回的类型是HTableInterface ,无法强转为HTable



解决办法:

 ht.put(put); 换成

hp.getTable(tName).put(put);



java代码中不可以插入表信息

遇见这种问题,如果不知道问题根源,需要把打印插入数据的sql语句,在数据库层,执行语句,排查是否是数据库的原因,然后再次排查网络原因,最后就是代码的原因了,一般如果以前没遇到问题,忽然出现这种情况大多是非代码原因!搞技术的没有帮忙查错的,只有帮忙如何找错的!
 

hbase执行一条语句插入一行数据,java编程实现类似executeUpdate(sql);

可以一次插入一行啊,HTableInterface.put(Put p)插入一个Put对象
public Put(byte [] row) 一个对象就是一行

public Put add(byte [] family, byte [] qualifier, long ts, byte [] value);继续添加列
 

相关内容