Skip to content

smallleopard/hbase-orm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

hbase-orm

hbase的orm模版方法,类似与JDBC模版方法使用

本jar提供的功能如下: 1.提供了文件(txt或hdfs)行记录与java object的互相转化的实现,通过注解的方式进行标记行列和java属性的对应的关系。目前默认的行列分隔符为\001; 具体使用方式为: (1)在java bean中使用对应的注解,使其和记录列保持一致。具体如下: @Stringable(tag = "user",seperator='\001') public class User { @Stringable.index(i=1) private String id; @Stringable.index(i=2) private int age; @Stringable.index(i=3) private String name;

	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	/**
	 * @return the age
	 */
	public int getAge() {
		return age;
	}
	/**
	 * @param age the age to set
	 */
	public void setAge(int age) {
		this.age = age;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
}
  (2)在使用时,可以通过TranslateService fileRecordTranslate = new TranslateService(new Class[]{xxx.class});接收的参数为具体的java bean类名

2.提供了操作HBase NoSQL数据库的DAO模板方法的具体实现,实现了CRUD的操作。使用者可以通过简单的配置,即可对hbase的表进行操作,可以对java object进行insert或者传入相应的查询条件,即可获取到对应java objec数据;删除目前还不完善,有待实现。 具体使用方式为: (1)在工程下添加hbase-site.xml配置文件,放置hbase集群的相关信息。 (2)鉴于目前大部分情况下,项目中都使用spring进行数据源的管理,因此需要在spring加入如下配置,对数据源进行初始化: (3)在java bean中使用对应的hbase注解,告知相应的rowkey,列簇等信息。具体事例: @HTableAnnotation(name = "user") public static class User { @HTableAnnotation.RowKey private String id; @HTableAnnotation.Column(cf = "Info", name = "age") private int age; @HTableAnnotation.Column(cf = "Info", name = "name") private String name; @HTableAnnotation.TS private Long time; public String getId() { return id; } public void setId(String id) { this.id = id; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Long getTime() { return time; } public void setTime(Long time) { this.time = time; } } (4)指定具体的DAO,然后就可以在程序中进行相应的注入了,依然是spring配置方式: 在程序中使用,即和使用其他dao方式一样。

About

hbase的orm模版方法,类似与JDBC模版方法使用

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages