這篇文章給大家分享的是有關(guān)IntelliJ IDEA中如何自動(dòng)生成serialVersionUID的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧。
創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的長(zhǎng)沙網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!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í)判斷類的serialVersionUID來(lái)驗(yàn)證版本一致性。在進(jìn)行反序列化時(shí),JVM會(huì)把傳來(lái)的字節(jié)流中的serialVersionUID與本地相應(yīng)實(shí)體(類)的serialVersionUID進(jìn)行比較,如果相同就認(rèn)為是一致的,可以進(jìn)行反序列化,否則就會(huì)出現(xiàn)序列化版本不一致的異常。
當(dāng)我們用 IntelliJ IDEA 編寫類并實(shí)現(xiàn) Serializable(序列化)接口的時(shí)候,可能會(huì)遇到這樣一個(gè)問(wèn)題,那就是:
無(wú)法自動(dòng)生成serialVersionUID.
而serialVersionUID
又是一個(gè)非常重要的字段,因?yàn)?Java 的序列化機(jī)制是通過(guò)在運(yùn)行時(shí)判斷類的serialVersionUID
來(lái)驗(yàn)證版本一致性的。在進(jìn)行反序列化時(shí),JVM 會(huì)把傳來(lái)的字節(jié)流中的serialVersionUID
與本地相應(yīng)實(shí)體(類)的serialVersionUID
進(jìn)行比較,如果相同就認(rèn)為是一致的,可以進(jìn)行反序列化,否則就會(huì)出現(xiàn)序列化版本不一致的異常。
一般來(lái)說(shuō),定義serialVersionUID
的方式有兩種,分別為:
采用默認(rèn)的1L
,具體為private static final long serialVersionUID = 1L;
根據(jù)類名、接口名、成員方法及屬性等來(lái)生成一個(gè)64
位的哈希字段,例如 private static final long serialVersionUID = XXXL;
而 Java 類進(jìn)行序列化也兩個(gè)主要目的,分別為:
把對(duì)象的字節(jié)序列永久地保存到硬盤上,通常存放在一個(gè)文件中;
在網(wǎng)絡(luò)上傳送對(duì)象的字節(jié)序列。
在這里,我們就一起來(lái)看看如何利用 IntelliJ IDEA 自動(dòng)生成serialVersionUID
.
第 1 步:安裝GenerateSerialVersionUID插件
如上圖所示,點(diǎn)擊Preferences
,進(jìn)入如下界面:
在這里,選擇Plugins
,并搜索GenerateSerialVersionUID
,如果沒(méi)有發(fā)現(xiàn)此插件,則可以點(diǎn)擊Search in repositories
進(jìn)行搜索:
如上圖所示,點(diǎn)擊install
,即可安裝此插件。
第 2 步:設(shè)置Inspections功能
如上圖所示,進(jìn)入Default Settings
,在Inspections
設(shè)置頁(yè)面中,勾選Serializable class without 'serialVersionUID'
,并且還可以在Severity
中設(shè)置提示級(jí)別,如Warning
、Error
等,默認(rèn)為Warning
,也建議選擇Warning
級(jí)別的提示。
如上圖所示,創(chuàng)建一個(gè)類并實(shí)現(xiàn)Serializable
接口,然后按alt
+Enter
鍵,即可收到提示,然后選擇SerialVersionUID
:
如上圖所示,顯然我們已經(jīng)利用 IntelliJ IDEA 中自動(dòng)生成serialVersionUID
啦!
感謝各位的閱讀!關(guān)于“IntelliJ IDEA中如何自動(dòng)生成serialVersionUID”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!
文章名稱:IntelliJIDEA中如何自動(dòng)生成serialVersionUID-創(chuàng)新互聯(lián)
當(dāng)前地址:http://jinyejixie.com/article36/cshgsg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開(kāi)發(fā)、手機(jī)網(wǎng)站建設(shè)、小程序開(kāi)發(fā)、企業(yè)建站、微信公眾號(hào)、云服務(wù)器
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容