Java:扩展LocalDate(LocalDateTime)类

Java:扩展LocalDate(LocalDateTime)类,java,datetime,java-8,Java,Datetime,Java 8,是否可以扩展JDK1.8LocalDate类而不包装它 public class UserLocalDate extends LocalDate implements UserType { //Cannot inhertit from final java.time.LocalDate } 该类是final,因此不能直接扩展。是否有类似的抽象类可以扩展,或者以其他方式获得具有相同方法的类 我试图做的是创建一个Hibernate自定义的UserTypedate类,它将是运行时环境中

是否可以扩展JDK1.8
LocalDate
类而不包装它

public class UserLocalDate extends LocalDate implements UserType { 
    //Cannot inhertit from final java.time.LocalDate
}  
该类是final,因此不能直接扩展。是否有类似的抽象类可以扩展,或者以其他方式获得具有相同方法的类


我试图做的是创建一个Hibernate自定义的
UserType
date类,它将是运行时环境中的
LocalDate
,并将作为使用特定规则生成的整数存储到数据库中。

您可以实现ChronoLocalDate接口,但是,包装类可能是您的最佳选择。

不,您不能扩展LocalDate,因此您的实现在您的环境中是一个
LocalDate
。即使在实现
ChronoLocalDate
时,您的实现也不会是
LocalDate


为什么不将
LocalDate
作为日期数据库值存储在数据库中呢?您使用的是哪个Hibernate版本?自Hibernate版本5以来,支持这些日期类型,如果您使用的是旧版本,则可以使用AttributeConverter。不久前我写了一篇关于这一点的文章,您可能希望通过这种方式进行检查。

谢谢!我使用的是Hibernate 5,但是日期应该存储为4字节的
整数
,而不是日期类型。我以前使用过
AttributeConverter
,但现在我发现将
LocalDate
包装在里面更容易实现Hibernate
UserType
。是的,我使用包装。实现
ChronoLocalDate
听起来像是从草图中编写自己的
LocalDate
。@OlegMikhailov我只会实现您实际需要/使用的方法。实现整个
ChronoLocalDate
很可能是过火了。