大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。
HBaseConvetorUtil 实体转换工具类
public class HBaseConvetorUtil {
/**
*
@Title : convetor
*
@Description : 传入hbase返回结果值。返回实例集合
*
@param
*
@return
*
@throws
*/
public static <T> List<T>convetor(Class<T> cla,ResultScanner resultScanner) throws Exception{
List<T> list =
new ArrayList<T>(); for (Result result :resultScanner) {
Field []fileds=cla.getDeclaredFields();
T t = cla.newInstance();
for (Field field:fileds){
field.setAccessible(true);
String fileName=field.getName();
if (result.containsColumn(Bytes.toBytes( “BASEINFO” ), Bytes.toBytes(fileName.toUpperCase()))){ if (result.getValue(Bytes.toBytes( “BASEINFO” ), Bytes.toBytes(fileName.toUpperCase())). length ==0){ continue ;
}
String value=Bytes.toString(result.getValue(Bytes.toBytes(
“BASEINFO” ), Bytes.toBytes(fileName.toUpperCase())));
field.set(t, value);
}
}
list.add(t);
}
return list;
}
/**
*
@Title : convetor
*
@Description : 传入hbase返回结果值,返回实例
*
@param
*
@return
*
@throws
*/
public static <T> Tconvetor(Class<T> cla,Result result) throws Exception{
Field []fileds=cla.getDeclaredFields();
T t = cla.newInstance();
for (Field field:fileds){
field.setAccessible(true);
String fileName=field.getName();
if (result.containsColumn(Bytes.toBytes( “BASEINFO” ), Bytes.toBytes(fileName.toUpperCase()))){ if (result.getValue(Bytes.toBytes( “BASEINFO” ), Bytes.toBytes(fileName.toUpperCase())). length ==0){ continue ;
}
String value=Bytes.toString(result.getValue(Bytes.toBytes(
“BASEINFO” ), Bytes.toBytes(fileName.toUpperCase())));
field.set(t, value);
}
}
return t;
}
/**
*
@Title : convetor
*
@Description : 传入保存实例和主键ID,返回PutDelete
*
@param
*
@return
*
@throws
*/
public static <T> PutDeleteconvetor(T t,String id) throws Exception {
Put put=
new Put(Bytes.toBytes(id));
Delete delete=
new Delete(Bytes.toBytes(id));
Field [] fileds=t.getClass().getDeclaredFields();
for (Field field:fileds){ field.setAccessible(true);
StringfieldName=field.getName();
Object value =field.get(t);
if ( null ==value){
delete.deleteColumn(Bytes.toBytes(
“BASEINFO” ), Bytes.toBytes(fieldName.toUpperCase())); continue ;
}
put.add(Bytes.toBytes(
“BASEINFO” ), Bytes.toBytes(fieldName.toUpperCase()), Bytes.toBytes((String)value));
}
PutDelete putdelete =
new PutDelete();
putdelete.setPut(put);
putdelete.setDelete(delete);
return putdelete;
}
}
很多其它精彩内请注意内容:http://bbs.superwu.cn
遵循超人学院微通道的二维码:
|
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/117846.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...