在ebean ORM中是否可以有可选属性?



当使用Ebean时,我们说,我有如下的ORM类:

@Entity
public class Student {
@id
private UUID id;
String age;
}

假设age是数据库中的一个可空列,我们必须始终检查该字符串的空值。是否有可能将年龄作为一个可选属性来明确实现这一点?

@Entity
public class Student {
@id
private UUID id;
Optional<String> age;
}

是否可以将年龄作为可选属性来显式执行此操作?

不,不可能。

请注意,我们可以修改Ebean以支持此操作,但我们没有这样做,因为我们认为这不是正确的操作

原因是因为通常期望java中的ANY FIELD不使用Optional。Optional期望用作返回类型或方法参数,但是NOT表示字段。IntelliJ将在任何使用Optional类型的字段上显示警告。

所以Ebean不支持可选字段,因为这与一般期望的可选字段不应该这样使用是不一致的。

相关内容

  • 没有找到相关文章

最新更新