package org.easyframe.tutorial.lessona.entity;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Version;
import jef.database.DataObject;
import jef.database.annotation.PartitionKey;
import jef.database.annotation.PartitionTable;
import jef.database.routing.function.KeyFunction;
@Entity
@PartitionTable( // @PartitionTable表示分表分库规则配置
key = {
//每个@PartitionKey表示一个分库分表的字段。
@PartitionKey(
field = "created", //条件字段名
function = KeyFunction.YEAR_MONTH_DAY //对该字段执行函数取得yyyyMMdd,并作为表名后缀
)
})
public class OperateLog extends DataObject {
private static final long serialVersionUID = 5867761162146442548L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long id;
@GeneratedValue(generator = "created-sys")
private Date created;
@Column(name="message",length=500)
private String message;
public enum Field implements jef.database.Field {
id, created, message
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public Date getCreated() {
return created;
}
public void setCreated(Date created) {
this.created = created;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}