Hibernate Kotlin功能,如Typescript Partial?
tl;博士最简单的转换方法是什么Hibernate Kotlin功能,如Typescript Partial?,hibernate,null,kotlin,jackson,Hibernate,Null,Kotlin,Jackson,tl;博士最简单的转换方法是什么 数据类用户(val组织:组织) 到 数据类UserNullable(val组织:组织?) 所以我有两种选择 长话短说: 我正在为我的Kotlin REST应用程序编写Spring引导集成测试,从JSON反序列化时遇到了困难。例如,我有一个用户类,它内部有一个不可为空的组织。但有时我想返回一个没有组织的用户,所以我不在Hibernate中加载组织,它会自动被Jackson序列化为null 在Typescript中有一个名为Partial的功能,它允许您创建一个类的
数据类用户(val组织:组织)
到
数据类UserNullable(val组织:组织?)
所以我有两种选择
长话短说:
我正在为我的Kotlin REST应用程序编写Spring引导集成测试,从JSON反序列化时遇到了困难。例如,我有一个用户
类,它内部有一个不可为空的组织
。但有时我想返回一个没有组织的用户,所以我不在Hibernate中加载组织,它会自动被Jackson序列化为null
在Typescript中有一个名为Partial
的功能,它允许您创建一个类的版本,其中所有字段都被认为是可为空的。对Kotlin来说,最简单的方法是什么?我不想破坏我所有实体类的空安全性。我也不想创建一个完全多余的DTO层
我知道我可以让我的类都使用
late init var
而不是构造函数参数val
s,但这将消除类的不可更改性,我认为这也是有价值的。您可以有一个默认组织,表示“未加载”,并编写一个Jackson自定义序列化程序,当它看到Kotlin organization属性具有该值时跳过organization
JSON字段?这也可能会给您一些想法: