将Joda时间映射到Cassandra的Date类型

时间:2015-02-19 16:03:08

标签: cassandra spring-data spring-data-cassandra

使用Spring-data的cassandra模块进行映射时,建议将Joda时间映射到Cassandra的Date类型的方法是什么?是否有与JPA / Hibernate中的@Type注释相同的东西?

2 个答案:

答案 0 :(得分:1)

此待处理故障单正在解决此问题: https://datastax-oss.atlassian.net/browse/JAVA-721

一旦解析,java驱动程序映射将允许自定义类型映射到cassandra数据模型。

答案 1 :(得分:0)

我还没有找到一种使用spring-data-cassandra注册转换器的简洁方法。

您仍然可以使用java.util.Date作为您的字段(框架将通过反射访问它们),并使用封装来提供您想要的类型:

@Table("measure")
public class Measure {

    @PrimaryKey("id") private String id;
    @Column("timestamp") private java.util.Date timestamp;
    @Column("data") private Double data;

    /** 
     * Convert java.util.Date -> org.joda.time.DateTime 
     */
    public DateTime getTimestamp() {
        // Simple example, beware of the timezone
        return new DateTime(ts);
    }

    // Constructor and other getters omitted
}