HBaseConvetorUtil 实体转换工具

HBaseConvetorUtil 实体转换工具

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

全栈程序员社区此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“验证码”,获取验证码。在微信里搜索“全栈程序员社区”或者“www_javaforall_cn”或者微信扫描右侧二维码都可以关注本站微信公众号。

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Python的正则表达式_python正则表达式例子

    Python的正则表达式_python正则表达式例子nlp任务中,正则表达式是一个很好的工具。推荐资源:https://github.com/ziishaned/learn-regex/https://regex101.com/在线练习结合网上的教程,我的整理如下:先来举个例子:#解析网页HTML<html><body><h1>helloworld&…

    2022年9月16日
    2
  • java面试题csdn_java面试题大全

    java面试题csdn_java面试题大全来自:https://www.cnblogs.com/tietazhan/articles/5771886.html 一、Java基础1.实例方法和静态方法有什么不一样?2.Java中的异常有哪几类?分别怎么使用?检出异常,非检出异常。检出异常需要try…catch才能编译通过。非检出异常不用try…catch也能编译通过。RuntimeException是非检…

    2022年10月9日
    2
  • JSP与Servlet的区别「建议收藏」

    JSP与Servlet的区别「建议收藏」JSP与Servlet的区别一、最重要的一句话!!jsp就是在html里面写java代码,servlet就是在java里面写html代码…其实jsp经过容器解释之后就是servlet.只是我们自己写代码的时候尽量能让它们各司其职,jsp更注重前端显示,servlet更注重模型和业务逻辑。不要写出万能的jsp或servlet来即可。二、对比1)什么是Servlet?Servlet其实就是一个遵循Servlet开发的java类。Servlet是由服务器调用的,运行在服务器端。2)为什么要用到Serv

    2022年6月18日
    26
  • apache安装与配置_eclipse环境配置

    apache安装与配置_eclipse环境配置NFS是NetworkFileSystem的缩写,顾名思义就是网络文件存储系统,它最早是由Sun公司发展出来的,也是FreeBSD支持的文件系统中的一个,它允许网络中的计算机之间通过TCP/IP网络共享资源。通过NFS,我们本地NFS的客户端应用可以透明地读写位于服务端NFS服务器上的文件,就像访问本地文件一样方便。简单的理解,NFS就是可以透过网络,让不同的主机、不同的操作系统可以共享存储的服务。

    2025年7月13日
    5
  • c++ pushback函数_push back from

    c++ pushback函数_push back from算法中里面的一个函数名,如c++中的vector头文件里面就有这个push_back函数,在vector类中作用为在vector尾部加入一个数据。string中也有这个函数,作用是字符串之后插入一个字符。如果是指标准模板库(stl)中容器的一般pushback()操作函数,那么是指在容器尾端插入一项数据,比如vectora(10);a.pushback(10);那么a的尾端,同时也是唯…

    2025年8月4日
    4
  • 有效沟通技巧

    有效沟通技巧【管理名言】面对面的沟通是最好的沟通方式沟通的三个行为:说、听、问要形成一个双向的沟通,必须包含三个行为,即:有说的行为、听的行为和问的行为。一个有效的沟通技巧就是由这三种行为组成的。换句话说,考核一个人是否具备沟通技巧的时候,看他这三种行为是否都出现。【案例分析】一家著名的公司在面试员工的过程中,经常会让10个应聘者在一个空荡的会议室里一起做一个小游戏,很…

    2022年6月16日
    21

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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