# h-orm **Repository Path**: liyongyao/h-orm ## Basic Information - **Project Name**: h-orm - **Description**: 基于注解的hbase orm小工具,目前比较简单 - **Primary Language**: Java - **License**: BSD-2-Clause - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 7 - **Forks**: 3 - **Created**: 2015-06-16 - **Last Updated**: 2025-05-10 ## Categories & Tags **Categories**: database-dev **Tags**: None ## README #h-orm #(1)类注解(@HTable)必须写,name表示表名(区分大小写) ``` @HTable(name = "Lion", family = "DATA") public class Lion implements HbaseTableModel { private String name; private int age; private long hight; private Date birth; @Override public byte[] getKey() { return (age + TimeUtil.getDateString(birth, Format.SHORT) + name) .getBytes(); } //getter&setter... } ``` #(2)也可以指定属性映射hbase列 ``` @HTable(name = "ReportKeyword", family = "DATA") public class ReportKeyword extends ReportCampaign { @HField("ADGROUP") private String adGroup; @HField("ADGROUP_ID") private Long adGroupId; @HField("CLICKS") private Integer clicks; @HField(value = "COST") private Double cost; @HField("KEYWORD") private String keyword; @HField("KEYWORD_ID") private Long keywordId; @Override public byte[] getKey() { StringBuilder sb = new StringBuilder(); sb.append(getNetwork()).append(getCustomerId()) .append(new SimpleDateFormat("yyMMdd").format(getDate())) .append(getCampaignId()).append(adGroupId).append(keywordId); return sb.toString().getBytes(); } //getter&setter... } ```