IDEA如何自動(dòng)生成serialVersionUID的設(shè)置
序列化和反序列化
Java是面向?qū)ο蟮恼Z言,與其他語言進(jìn)行交互(比如與前端js進(jìn)行http通信),需要把對象轉(zhuǎn)化成一種通用的格式比如json(前端顯然不認(rèn)識Java對象),從對象到j(luò)son字符串的轉(zhuǎn)換,就是序列化的過程,反過來,從json字符串轉(zhuǎn)換成Java對象,就是反序列化的過程。
serialVersionUID是什么
反序列化的過程,需要從一個(gè)json字符串生成一個(gè)Java對象。
Gson gson = new Gson(); Request req = gson.fromJson("request string", Request.class)
這時(shí)候會(huì)有問題,需要驗(yàn)證輸入的json字符串是否是從當(dāng)前的Request這個(gè)類序列化過去的,serialVersionUID就是用來干這個(gè)的。當(dāng)序列化的時(shí)候的serialVersionUID與反序列化的時(shí)候的serialVersionUID不一致的時(shí)候,會(huì)跑出InvalidCalssException。
具體的序列化過程是這樣的:序列化操作的時(shí)候系統(tǒng)會(huì)把當(dāng)前類的serialVersionUID寫入到序列化文件中,當(dāng)反序列化時(shí)系統(tǒng)會(huì)去檢測文件中的serialVersionUID,判斷它是否與當(dāng)前類的serialVersionUID一致,如果一致就說明序列化類的版本與當(dāng)前類版本是一樣的,可以反序列化成功,否則失敗。
如何生成
首先我們會(huì)實(shí)現(xiàn)接口,那么如何自動(dòng)生成serialVersionUID呢。
1、沒有設(shè)置之前,選中對應(yīng)的類名,然后按 alt+enter 快捷鍵 的情況如下所示
2、設(shè)置自動(dòng)生成 serialVersionUID 的方式如下圖所示
3、設(shè)置之后,選中對應(yīng)的類名,然后按 alt+enter 快捷鍵 的情況如下所示
4、點(diǎn)擊就可以自動(dòng)生成了。
到此這篇關(guān)于IDEA如何自動(dòng)生成 serialVersionUID 的設(shè)置的文章就介紹到這了,更多相關(guān)IDEA自動(dòng)生成 serialVersionUID 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot應(yīng)用jar包啟動(dòng)原理詳解
本文主要介紹了SpringBoot應(yīng)用jar包啟動(dòng)原理詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-03-03JAVA數(shù)據(jù)寫入生成excel文件和發(fā)送郵件
這篇文章主要介紹了JAVA數(shù)據(jù)寫入生成excel文件和發(fā)送郵件,流程:先導(dǎo)包 => 郵箱開啟配置 => java寫好配置類 => 測試發(fā)送 => 數(shù)據(jù)寫入excel => 郵件帶附件發(fā)送2024-06-06java學(xué)習(xí)DongTai被動(dòng)型IAST工具部署過程
被動(dòng)型IAST被認(rèn)為是DevSecOps測試階段實(shí)現(xiàn)自動(dòng)化安全測試的最佳工具,而就在前幾天,洞態(tài)IAST正式開源了,這對于甲方構(gòu)建安全工具鏈來說,絕對是一個(gè)大利好2021-10-10java把excel內(nèi)容上傳到mysql實(shí)例代碼
這篇文章主要介紹了java把excel內(nèi)容上傳到mysql實(shí)例代碼,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01