HBaseConvetorUtil 实体转换工具

HBaseConvetorUtil 实体转换工具

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

HBaseConvetorUtil 实体转换工具此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“”,获取验证码。在微信里搜索“”或者“”或者微信扫描右侧二维码都可以关注本站微信公众号。

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
遵循超人学院微通道的二维码:
HBaseConvetorUtil 实体转换工具
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/117846.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • Linux网络下载管理工具(lftp, ftp, lftpget, wget)「建议收藏」

    Linux网络下载管理工具(lftp, ftp, lftpget, wget)「建议收藏」网络客户端管理工具在Linux中,通常用网络客户端管理工具实现文件的下载与上传,主要有以下几种,分别为lftp工具,ftp工具,lftpget工具,wget工具,在centos7中,要尽量学会lftp,lftpget等工具,下面多这些工具的简单使用逐一介。lftp使用命令manlftp可查看其具体的使用方法,如果lftp工具未安装,使用yuminstalllftp命令进…

  • 清除cookie的方法_js设置cookie

    清除cookie的方法_js设置cookieJavaScript是运行在客户端的脚本,因此一般是不能够设置Session的,因为Session是运行在服务器端的。而cookie是运行在客户端的,所以可以用JS来设置cookie.一:设置co

  • PHP 获取客户端ip地址

    PHP 获取客户端ip地址

  • 等价类划分法测试用例举例_使用等价类划分法设计测试用例

    等价类划分法测试用例举例_使用等价类划分法设计测试用例测试用例之等价类划分法 测试用例之等价类划分一、关于测试用例的知识1、测试用例的基本概念:测试用例(案例):testcase/testinstance是在测试执行之前,由测试人员进行编写的指导测试过程的重要文档,主要包括:用例编号,测试目的,测试步骤(用例描述),预期结果(期待结果)等(不同公司模板不同,但是大同小异)2、…

  • Linux解压命令「建议收藏」

    Linux解压命令「建议收藏」1.压缩命令:  命令格式:tar -zcvf  压缩文件名.tar.gz  被压缩文件名     可先切换到当前目录下。压缩文件名和被压缩文件名都可加入路径。 2.解压缩命令:  命令格式:tar -zxvf  压缩文件名.tar.gz  解压缩后的文件只能放在当前的目录。 3.Linux下如何解压tar.bz2文件             在l…

  • 360常用快捷键_10个常用的快捷键

    360常用快捷键_10个常用的快捷键“工欲善其事必先利其器”,整理了一份360常用快捷键。======================================常用快捷键======================================Ctrl+小键盘“+”当前页面放大10%Ctrl+小键盘“-”当前页面缩小10%——————-…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号