詳細IntelliJIDEAでserialVersionUIDを自動的に生成する方法
Details How Automatically Generate Serialversionuid Intellij Idea
IntelliJ IDEAを使用してクラスを記述し、Serializableインターフェイスを実装すると、次の問題が発生する可能性があります。
- 自動生成できません
serialVersionUID
。
およびserialVersionUID
Javaのシリアル化メカニズムは実行時にクラスを判断するため、もう1つの非常に重要なフィールドです。serialVersionUID
バージョンの整合性を検証するため。デシリアライズするとき、JVMは着信バイトストリームを配置しますserialVersionUID
ローカルの対応するエンティティ(クラス)とserialVersionUID
比較のために、同じものが一貫していると見なされる場合はデシリアライズできます。シリアル化されたバージョンでは矛盾があります。
一般的に、定義serialVersionUID
2つの方法があります。
- デフォルトを採用
1L
、具体的にはprivate static final long serialVersionUID = 1L
- クラス名、インターフェイス名、メンバーメソッド、および属性に基づいて生成します。
64
ビットのハッシュフィールド(例:private static final long serialVersionUID = XXXL
)
Javaクラスのシリアル化には、次の2つの主な目的もあります。
- オブジェクトのバイトシーケンスをハードディスク(通常はファイル)に永続的に保存します
- オブジェクトの一連のバイトがネットワークを介して送信されます。
ここでは、IntelliJIDEAを使用して自動生成する方法を見てみましょう。| _ + _ |。
ステップ1:インストールserialVersionUID
プラグイン
上に示したように、GenerateSerialVersionUID
をクリックし、次のように入力します インターフェース :
ここで、選択Preferences
そして検索Plugins
このプラグインが見つからない場合は、クリックすることができますGenerateSerialVersionUID
検索:
上に示したように、Search in repositories
をクリックすると、このプラグインをインストールできます。
ステップ2:セットアップinstall
機能
上記のように、次のように入力しますInspections
、in Default Settings
設定ページでInspections
をチェックしますSerializable class without 'serialVersionUID'
プロンプトレベルを設定しますSeverity
、 Warning
など、デフォルトはError
推奨Warning
レベルヒント。
クラスを作成し、上記のように実装しますWarning
Interface、次にSerializable
+ alt
Keyを押すと、プロンプトが表示され、Enter
:を選択できます。
上に示したように、明らかにIntelliJ IDEA SerialVersionUID
La!の自動生成を利用しています。
転載元: https://blog.csdn.net/qq_35246620/article/details/77686098