gpt4 book ai didi

java - 如何使字段 transient ,以便 Java 对象在使用 marshal 时不会被序列化?

转载 作者:行者123 更新时间:2023-12-01 05:59:37 25 4
gpt4 key购买 nike

我有一个 JRuby 类,其中包含一个 Java 对象的实例变量。您可能知道,JRuby 在序列化 Java 对象时遇到很多麻烦,因此我想跳过该对象。

如何实现这一目标?

最佳答案

您可能必须编写自己的自定义 Marshal 函数来排除 Java 实例变量。对于一个非常简单的示例,请参阅 http://www.linuxtopia.org/online_books/programming_books/ruby_tutorial/Reflection_ObjectSpace_and_Distributed__Ruby_Custom_Serialization_Strategy.html

您需要将代码更改为除 Java 实例之外的所有自定义 Marshal:没有要排除的通用功能,仅在类级别定义整个 marshal 方法。您可以使用反射来获取实例变量列表,删除不需要的变量并编码(marshal)剩余的实例变量。没那么困难,但也不再是一句废话了。

关于java - 如何使字段 transient ,以便 Java 对象在使用 marshal 时不会被序列化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1445155/

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