数据 bean 是将数据保存在内存中并在 Gora 中持久化的主要方式。
-
如果您看到 Gora 数据 bean 看起来与 java bean 相似,那么结构明智,但一些 AVRO 特定差异如下
在阅读了 wiki 上的 Java Beans 定义后 “JavaBeans 是将许多对象封装到单个对象(bean)中的类。它们是可序列化的,具有零参数构造函数,并允许使用 getter 和setter 方法。命名“Bean”是为了包含这个标准,旨在为 Java 创建可重用的软件组件”
我看不出数据 bean 和 java bean 有任何区别,除了两者都使用的上下文,即数据 bean 顾名思义在 Gora 中保存数据和 java bean 将对象保存在java.
而数据结构只不过是一种在程序或计算机中组织数据以便有效使用的方法。
GORA 中的数据 Bean 结构示例
public class Pageview extends PersistentBase {
private Utf8 url;
private long timestamp;
private Utf8 ip;
public static final Schema _SCHEMA = Schema.parse("{\"type\":\"record\", ... ");
public static enum Field {
URL(0,"url"),
TIMESTAMP(1,"timestamp"),
IP(2,"ip"),
HTTP_METHOD(3,"httpMethod"),
HTTP_STATUS_CODE(4,"httpStatusCode"),
RESPONSE_SIZE(5,"responseSize"),
REFERRER(6,"referrer"),
USER_AGENT(7,"userAgent"),
;
private int index;
private String name;
Field(int index, String name) {this.index=index;this.name=name;}
public int getIndex() {return index;}
public String getName() {return name;}
public String toString() {return name;}
};
public static final String[] _ALL_FIELDS = {"url","timestamp","ip","httpMethod"
,"httpStatusCode","responseSize","referrer","userAgent",};
}