【发布时间】:2026-02-11 14:50:01
【问题描述】:
我们有大量的 Java 应用程序,并且正在尝试在 Kotlin 中实现我们的第一个应用程序。问题是:初始化简单休眠模型属性的最佳方法是什么?
让我们以 Java 为例:
@Entity
@Table(name = "Session_Ids")
public class SessionId() {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
protected Long id;
@Column
protected Long number;
}
现在让我们假设数据库中的 id 和数字永远不能为空。因此,在休眠完成所有操作后,模型将始终在 id 字段中具有一个值,在 number 字段中具有一个值。
如何在 Kotlin 中做到这一点? 我不能用 null 来初始化它们,因为我必须将这些字段声明为它们不应该的 Nullable。我不能使用lateinit,因为这两个字段都是原始长类型。
我认为防止将它们定义为可为空的唯一方法是用一些错误的默认值初始化它们。类似的东西
var number: Long = -1
但这在我看来是错误的。
在 Kotlin 中是否有某种最佳实践来做这样的事情?
提前谢谢你!
【问题讨论】:
标签: hibernate kotlin properties model notnull