gpt4 book ai didi

java - 我应该用 Serializable 标记 spring mvc DTO 吗?

转载 作者:行者123 更新时间:2023-12-01 14:33:49 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Spring MVC - should my domain classes implement Serializable for over-the-wire transfer?

(5 个回答)


3年前关闭。




我们开发非常常见的spring MVC应用程序
我们有:
Controller 层 ( @RestComtroller + @GetMapping@PostMapping )
服务层 ( @Service )
存储库层 ( CrudRepository 来自 spring-data-jpa )

我们使用 DTO 在 FE 和 BE 之间进行通信。

今天我的同事让我把所有的 DTO 都标记为 implements Serializable并添加 serialVersionUID field 。我问了原因,但他说这是“最佳实践”。我真的很困惑。 Serializable与 java 序列化相关,但我们使用 JSON 进行 BE 和 FE 通信。

你能澄清一下这个问题吗?那么我应该用 Serializable 标记 spring mvc DTO 吗?

最佳答案

不,你不应该。

序列化意味着一方将对象的状态保存为字节序列,而另一方在 future 某个时间将这些字节重建为 Activity 对象。

这意味着您应该在后端使用 Java 序列化 API,通过网络传递结果,并找到一种方法如何在前端使用接收到的字节。序列化 Java 对象的格式是特定于 Java 的,并非设计为不可知的,因此您可能找不到合理(且简短)的方法。

你不应该(因为你是通过 JSON 与客户端通信)。

关于java - 我应该用 Serializable 标记 spring mvc DTO 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52192665/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com