gpt4 book ai didi

java - 查找序列化用法

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:27:00 26 4
gpt4 key购买 nike

我正在维护一些应用程序,我有一个标记为 Serializable 的类,但我怀疑它没有在任何地方序列化,因此不需要 Serializable 标记。

确定这一点的最佳方法是什么?可以静态确定吗?

谢谢

最佳答案

不直接。通常,序列化发生在将对象写入 ObjectOutputStream 时,但这通常发生在您的代码之外(例如,在您使用的库中,或在您的容器中)。所以你有两个选择:

  • 动态地 - 在您的类中定义此方法。因此,您最终会知道该类是否正在序列化,而不会破坏任何功能。但是您需要系统处于运行状态:

    private void writeObject(java.io.ObjectOutputStream out) {
    out.defaultWriteObject();
    log.info("Object of type " +
    getClass().getName() + " is being serialized");
    // optionally include a stacktrace here, or use a debugger, to see
    // when exactly it happened
    }
  • 尝试了解您的对象要去哪里。如果它通过网络传输,或存储在临时存储( session 、缓存)中,那么它应该是可序列化的。否则,很可能不会。

关于java - 查找序列化用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4538893/

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