【问题标题】:monitoring java serialization监控java序列化
【发布时间】:2012-08-25 06:14:13
【问题描述】:

哪个工具可以用来追踪序列化过程,哪些字段被序列化的顺序?

我有两个可选的类层次结构。字段是相同的,但在一种情况下,对象直接声明它们,在另一种情况下,它是在基类中完成的。然后,该字段未序列化。我想知道为什么。扩展的序列化调试信息什么都不做。

PS!没有序列化异常。一切都很顺利。我只想知道为什么字段在一种情况下被序列化,而在另一种情况下却没有。

【问题讨论】:

  • 基类是否也可序列化?如果不是,它的状态将不会被保留。您可以让子类处理序列化父状态,但它涉及更多一点。请参阅可序列化的文档:docs.oracle.com/javase/1.4.2/docs/api/java/io/Serializable.html
  • 哎呀。链接到旧文档。还是基本一样:docs.oracle.com/javase/7/docs/api/index.html
  • 你认为我对你隐藏了 NotSerializableException 吗?
  • 您可以序列化其超类未实现 Serializable 的对象,而不会导致 NotSerializableException。无论如何,我无法重现您看到的那种错误,所以除非您想发布您的代码,否则我认为我们无能为力。
  • 这里的实际问题是什么?你真的在寻找一个工具,还是只是一个解释?你真正需要的只是解释。您关于“隐藏”异常的评论无关紧要,但它暴露了一些混乱。不可序列化的基类根本不会被序列化:不会引发异常。

标签: java debugging serialization


【解决方案1】:

我只能想到使用标准 Java 调试器单步执行序列化代码;例如IDE 中的那个。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-12-04
  • 2013-08-26
  • 2011-02-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-05
相关资源
最近更新 更多