3

Java オブジェクトをファイルに保存したいと思います (後で単体テストを行うため)。JSON を試してみましたが、シリアライズしているオブジェクトのクラスを所有していないため、デシリアライズは必要以上に手間がかかります。(既存のクラスへのゲッターとセッターは異なる型でオーバーロードされており、Jackson はオブジェクトを逆シリアル化する方法を理解できません)

現在、私は他の方法を模索しています (つまり、バイナリまたは他の形式へのシリアライズ)。逆シリアル化が簡単になるように、Javaオブジェクトをバイナリ/ファイルにダンプできるものがあるかどうか疑問に思っています。インターフェイスを使用してこれを行うことができることは理解していSerializableますが、このインターフェイスを実装しないこれらのクラスを所有していないため、変更できません。

4

3 に答える 3

7

インターフェイスを実装したクラスに依存しないXStreamを使用することもできSerializableます。

于 2013-01-14T12:27:06.363 に答える
0

それらが実装されている場合、それらSerializableを所有する(または変更する)必要はありません。 を使用してファイルに書き込みObjectOutputStreamObjectInputStream

クラスに適切なゲッターとセッターがあると仮定すると、これを行うのに問題はないはずです

于 2013-01-14T12:25:09.873 に答える
0

Kryoも使用できます。ベンチマーク (ここここ) は、シリアル化/逆シリアル化が最も高速であり、使用するスペースも少ないと述べています。またSerializable、実装する必要はありません。とは言え、個人的に使ったことはありません。

于 2013-01-14T13:08:44.697 に答える