java - 即使在简单的 POJO Java 类中实现 java.io.Serializable 也是最佳实践吗?

标签 java serialization

一般来说,让简单的 POJO Java 类实现 java.io.Serializable 是最佳实践吗?

最佳答案

一般不会。约书亚布洛赫说 implement Serializable judiciously .他描述的缺点总结:

  • 降低了以后更改类实现的灵 active - 序列化形式是类 API 的一部分
  • 更有可能出现一些错误和安全漏洞 - 攻击者可以访问序列化字节流中的类内部
  • 增加了测试负担 - 现在您必须测试序列化!
  • 负担子类的作者——他们也必须使他们的子类可序列化

当然,有时您需要一个 POJO 来实现可序列化,例如 RMI,但如果不需要,没有它您的代码会更简单、更安全。

关于java - 即使在简单的 POJO Java 类中实现 java.io.Serializable 也是最佳实践吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/219276/

相关文章:

java - 为什么 System.getProperty ("java.io.tmpdir") 在 Mac OS X Catalina 10.15 上返回只读目录

java - 智能 : navigate to custom declaration based upon string in Java file

java - 从其他类获取 JComponent 会改变帧大小

c# - 如何使用 XElement 在 C# 中使用 List 序列化对象?

java - Hadoop 序列化嵌套对象

java - 如何使用 Java API 分割以省略号连接的单词

java - Java 线程转储中缺少线程

java - 复杂对象序列化

java - 集群环境中的序列化问题

c# - 如何通过 NewtonSoft 反序列化对象 json 列表?