我想将Java对象保存到文件中(稍后进行单元测试)。我已经尝试过JSON,但由于我没有对我正在序列化的对象拥有类,因此反序列化变得比它的价值更多。 (现有类的getter和setter重载了不同类型,Jackson无法弄清楚如何反序列化对象)
现在我正在探索其他途径(即序列化为二进制或其他格式)。我想知道是否有任何东西可以将Java对象转储到二进制文件/文件,以便反序列化是微不足道的。我知道您可以使用Serializable
接口执行此操作,但我不再拥有这些不实现此接口的类,因此无法修改它们。
答案 0 :(得分:7)
您还可以使用XStream,这不依赖于已实现Serializable
接口的类。
答案 1 :(得分:0)
如果他们实施Serializable
您不需要拥有它们(也不需要修改它们),您只需使用ObjectOutputStream
将它们写入文件,然后使用ObjectInputStream
将其读回来
假设这些类具有正确的getter和setter,那么你应该没有问题
答案 2 :(得分:0)