オブジェクトがデータベースにシリアル化されているという古典的な状況があり、逆シリアル化しようとするとSerializationException: could not deserialize
. ここでの私の課題は、このコードが潜在的に の値が異なるさまざまな顧客にインストールされていることですserialVersionUID
。そのため、報告されたローカル クラスの値にこれを上書きすることは解決策ではありません。
私の質問は、readObject メソッドを提供すると serialVersionUID チェックが無効になるのか、それともチェックされるのかということです。
readObject が serialVersionUID のチェックを無効にする場合、これで十分でしょうか:
private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException {
in.defaultReadObject();
}