程序员的量化交易之路(17)--Cointrader之Temporal实体(5)

转载需要注明:http://blog.csdn.net/minimicall,http://cloudtrader.top/

这一小节说明一个时间实体Temporal实体,它的代码很简单。

package org.cryptocoinpartners.schema;

import java.util.Date;

import javax.persistence.Basic;
import javax.persistence.MappedSuperclass;
import javax.persistence.Transient;

import org.hibernate.annotations.Type;
import org.joda.time.Instant;

/**
 * @author Tim Olson
 */
//这个标注说明这个类也是一个基类,不会在数据库中创建表
@MappedSuperclass
public class Temporal extends EntityBase {

    public Temporal(Instant time) {
        super();
        this.time = time;
        this.dateTime = time.toDate();
        this.timestamp = time.getMillis();
    }

    /** For Events, this is the time the Event itself occured, not the time we received the Event.  It should be remote
     * server time if available, and local time if the object was created locally */
/@/Type注解用于说明类型
    @Type(type = "org.jadira.usertype.dateandtime.joda.PersistentInstantAsMillisLong")
    @Basic(optional = false)
    public Instant getTime() {
        return time;
    }
//这个注解用于说明该字段不会存储到数据库中
    @Transient
    public Date getDateTime() {
        return dateTime;
    }

    @Transient
    public long getTimestamp() {
        return timestamp;
    }

    // JPA
    protected Temporal() {
    }

    protected void setTime(Instant time) {
        this.time = time;
        this.dateTime = time.toDate();
        this.timestamp = time.getMillis();
    }

    protected Instant time;//时间
    private long timestamp;//时间截
    private Date dateTime;//日期

}

需要说明的是,这个类

你可能感兴趣的:(Hibernate,jpa,Esper,量化交易,cointrader)