java - 为什么我们应该在 Java 中使我们的 POJO 可序列化?

标签 java serialization

我已经看到很多关于如何使用不同的框架在 java 中序列化 POJO 的问题,但我想首先真正了解使我们的 POJO 可序列化的必要性。您使用 JavaScript 来处理 POJO 对象或 Spring 或任何其他框架 - 为什么我们总是必须使我们的 POJO 的 Serializable

它是否必须根据良好实践最佳实践来完成?

如果不是这种情况,我们可以通过序列化 POJO 类来利用什么优势?

有几个线程讨论这个问题,但我对解释/答案并不满意!

在座的任何人都可以阐明这个概念吗?

最佳答案

通常需要序列化 ​​POJO:

  1. 通过某种媒介(网络服务等)传输它们
  2. 将它们存储在某种介质上。 (这又会转化为您将如何存储它们:XML、二进制等)。

你不必总是序列化它们,这取决于你在做什么。

例如,如果您有一个带有 User 对象概念的 Web 应用程序,其中用户有一个用户名,也许还有一些偏好,那么使该类可序列化可能没有意义。但是,如果您公开一个 Web 服务,第 3 方可以通过该服务提取用户信息,那么该类就需要可序列化,以便可以将其传输给第 3 方。

关于java - 为什么我们应该在 Java 中使我们的 POJO 可序列化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32862938/

相关文章:

java - 在 prefuse (java) 图中显示边标签

Java:将 int 转换为 InetAddress

php - symfony 序列化程序可以反序列化返回子实体类型的嵌套实体吗?

c++ - 如何将迭代器(或类似的东西)存储到硬盘上?

c# - 如何将 XML 反序列化为 json 和将 json 反序列化为 c# 类?

c# - 深入查找或搜索 JSON 中任何级别的键并替换其在 C# 中的值

java - 从文件中读取String和Int,然后循环遍历?

java - JTable 的 getSelectedColumn 不适用于更改模型

java - <T> Stream<T> - 不理解这个返回类型

delphi - DataSnap "Plain Old Delphi Objects"和嵌套对象