欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳述IntelliJ IDEA 中自動(dòng)生成 serialVersionUID 的方法(圖文)

 更新時(shí)間:2017年11月30日 11:36:04   作者:維C果糖  
本篇文章主要介紹了詳述IntelliJ IDEA 中自動(dòng)生成 serialVersionUID 的方法(圖文),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。

serialVersionUID介紹

再編程過(guò)程中當(dāng)涉及到對(duì)象的傳輸問(wèn)題時(shí),我們會(huì)采用序列化的技術(shù),通過(guò)序列化可以將對(duì)象的狀態(tài)信息轉(zhuǎn)換為可以存儲(chǔ)或傳輸?shù)男问降倪^(guò)程。在Java當(dāng)中我們可以通過(guò)實(shí)現(xiàn)Serializable接口來(lái)序列化對(duì)象,而serialVersionUID就是Java序列化機(jī)制中一個(gè)不可或缺的角色,可以通過(guò)在運(yùn)行時(shí)判斷類(lèi)的serialVersionUID來(lái)驗(yàn)證版本一致性。在進(jìn)行反序列化時(shí),JVM會(huì)把傳來(lái)的字節(jié)流中的serialVersionUID與本地相應(yīng)實(shí)體(類(lèi))的serialVersionUID進(jìn)行比較,如果相同就認(rèn)為是一致的,可以進(jìn)行反序列化,否則就會(huì)出現(xiàn)序列化版本不一致的異常。

當(dāng)我們用 IntelliJ IDEA 編寫(xiě)類(lèi)并實(shí)現(xiàn) Serializable(序列化)接口的時(shí)候,可能會(huì)遇到這樣一個(gè)問(wèn)題,那就是:

無(wú)法自動(dòng)生成serialVersionUID.

serialVersionUID又是一個(gè)非常重要的字段,因?yàn)?Java 的序列化機(jī)制是通過(guò)在運(yùn)行時(shí)判斷類(lèi)的serialVersionUID來(lái)驗(yàn)證版本一致性的。在進(jìn)行反序列化時(shí),JVM 會(huì)把傳來(lái)的字節(jié)流中的serialVersionUID與本地相應(yīng)實(shí)體(類(lèi))的serialVersionUID進(jìn)行比較,如果相同就認(rèn)為是一致的,可以進(jìn)行反序列化,否則就會(huì)出現(xiàn)序列化版本不一致的異常。

一般來(lái)說(shuō),定義serialVersionUID的方式有兩種,分別為:

  1. 采用默認(rèn)的1L,具體為private static final long serialVersionUID = 1L;
  2. 根據(jù)類(lèi)名、接口名、成員方法及屬性等來(lái)生成一個(gè)64位的哈希字段,例如 private static final long serialVersionUID = XXXL;

而 Java 類(lèi)進(jìn)行序列化也兩個(gè)主要目的,分別為:

  1. 把對(duì)象的字節(jié)序列永久地保存到硬盤(pán)上,通常存放在一個(gè)文件中;
  2. 在網(wǎng)絡(luò)上傳送對(duì)象的字節(jié)序列。

在這里,我們就一起來(lái)看看如何利用 IntelliJ IDEA 自動(dòng)生成serialVersionUID.

第 1 步:安裝GenerateSerialVersionUID插件

1

如上圖所示,點(diǎn)擊Preferences,進(jìn)入如下界面:

2

在這里,選擇Plugins,并搜索GenerateSerialVersionUID,如果沒(méi)有發(fā)現(xiàn)此插件,則可以點(diǎn)擊Search in repositories進(jìn)行搜索:

3

如上圖所示,點(diǎn)擊install,即可安裝此插件。

第 2 步:設(shè)置Inspections功能

4

如上圖所示,進(jìn)入Default Settings,在Inspections設(shè)置頁(yè)面中,勾選Serializable class without 'serialVersionUID',并且還可以在Severity中設(shè)置提示級(jí)別,如Warning、Error等,默認(rèn)為Warning,也建議選擇Warning級(jí)別的提示。

5

如上圖所示,創(chuàng)建一個(gè)類(lèi)并實(shí)現(xiàn)Serializable接口,然后按alt+Enter鍵,即可收到提示,然后選擇SerialVersionUID

6

如上圖所示,顯然我們已經(jīng)利用 IntelliJ IDEA 中自動(dòng)生成serialVersionUID啦!

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java SSL與TLS客戶端證書(shū)配置方式

    Java SSL與TLS客戶端證書(shū)配置方式

    這篇文章主要介紹了Java SSL與TLS客戶端證書(shū)配置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • Java中JDBC連接數(shù)據(jù)庫(kù)詳解

    Java中JDBC連接數(shù)據(jù)庫(kù)詳解

    本文主要介紹了JDBC連接數(shù)據(jù)庫(kù)的相關(guān)知識(shí),具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧
    2017-03-03
  • feign實(shí)現(xiàn)傳遞參數(shù)的三種方式小結(jié)

    feign實(shí)現(xiàn)傳遞參數(shù)的三種方式小結(jié)

    這篇文章主要介紹了feign實(shí)現(xiàn)傳遞參數(shù)的三種方式小結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • Java 使用 FFmpeg 處理視頻文件示例代碼詳解

    Java 使用 FFmpeg 處理視頻文件示例代碼詳解

    這篇文章主要介紹了Java 使用 FFmpeg 處理視頻文件示例代碼,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-02-02
  • Spring關(guān)閉Tomcat Servlet容器時(shí)內(nèi)存泄漏問(wèn)題解決方案

    Spring關(guān)閉Tomcat Servlet容器時(shí)內(nèi)存泄漏問(wèn)題解決方案

    這篇文章主要介紹了Spring關(guān)閉Tomcat Servlet容器時(shí)內(nèi)存泄漏問(wèn)題解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10
  • Java字節(jié)流 從文件輸入輸出到文件過(guò)程解析

    Java字節(jié)流 從文件輸入輸出到文件過(guò)程解析

    這篇文章主要介紹了Java字節(jié)流 從文件輸入 輸出到文件過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09
  • Java ConcurrentHashMap鎖分段機(jī)制使用及代碼實(shí)例

    Java ConcurrentHashMap鎖分段機(jī)制使用及代碼實(shí)例

    ConcurrentHashMap是Java中的一種線程安全的哈希表,通過(guò)鎖分段機(jī)制提高了并發(fā)性能,在Java 8中,ConcurrentHashMap引入了CAS操作和更復(fù)雜的節(jié)點(diǎn)繼承結(jié)構(gòu),進(jìn)一步優(yōu)化了并發(fā)操作
    2025-01-01
  • Java8 CompletableFuture 異步執(zhí)行操作

    Java8 CompletableFuture 異步執(zhí)行操作

    CompletableFuture是java8提供的基于異步操作的封裝,日常開(kāi)發(fā)中經(jīng)常會(huì)用到,接下來(lái)通過(guò)本文給大家介紹Java8 CompletableFuture 異步執(zhí)行操作,感興趣的朋友一起看看吧
    2021-06-06
  • Java中PageHelper分頁(yè)后對(duì)list操作導(dǎo)致分頁(yè)無(wú)效

    Java中PageHelper分頁(yè)后對(duì)list操作導(dǎo)致分頁(yè)無(wú)效

    在項(xiàng)目中使用分頁(yè)插件的時(shí)候發(fā)現(xiàn)PageHelper插件失效了,本文就來(lái)介紹一下Java中PageHelper分頁(yè)后對(duì)list操作導(dǎo)致分頁(yè)無(wú)效的解決方法,感興趣的可以了解一下
    2021-05-05
  • MyBatis映射關(guān)系詳解

    MyBatis映射關(guān)系詳解

    本文重點(diǎn)介紹MyBatis映射關(guān)系重點(diǎn)是映射關(guān)系一對(duì)一,一對(duì)一映射方式結(jié)合應(yīng)用實(shí)例給大家詳細(xì)講解,對(duì)MyBatis映射關(guān)系相關(guān)知識(shí)感興趣的朋友一起看看吧
    2022-11-11

最新評(píng)論