Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hibernate Kotlin功能,如Typescript Partial?_Hibernate_Null_Kotlin_Jackson - Fatal编程技术网

Hibernate Kotlin功能,如Typescript Partial?

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的功能,它允许您创建一个类的

tl;博士最简单的转换方法是什么

数据类用户(val组织:组织)

数据类UserNullable(val组织:组织?)

所以我有两种选择

长话短说:

我正在为我的Kotlin REST应用程序编写Spring引导集成测试,从JSON反序列化时遇到了困难。例如,我有一个
用户
类,它内部有一个不可为空的
组织
。但有时我想返回一个没有组织的用户,所以我不在Hibernate中加载组织,它会自动被Jackson序列化为
null

在Typescript中有一个名为
Partial
的功能,它允许您创建一个类的版本,其中所有字段都被认为是可为空的。对Kotlin来说,最简单的方法是什么?我不想破坏我所有实体类的空安全性。我也不想创建一个完全多余的DTO层


我知道我可以让我的类都使用
late init var
而不是构造函数参数
val
s,但这将消除类的不可更改性,我认为这也是有价值的。

您可以有一个默认组织,表示“未加载”,并编写一个Jackson自定义序列化程序,当它看到Kotlin organization属性具有该值时跳过
organization
JSON字段?这也可能会给您一些想法: