IDEA生成serialVersionUID的方法圖文詳解
序列化和反序列化
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í)候會有問題,需要驗(yàn)證輸入的json字符串是否是從當(dāng)前的Request這個(gè)類序列化過去的,serialVersionUID就是用來干這個(gè)的。當(dāng)序列化的時(shí)候的serialVersionUID與反序列化的時(shí)候的serialVersionUID不一致的時(shí)候,會跑出InvalidCalssException。
====================================================================
具體的序列化過程是這樣的:序列化操作的時(shí)候系統(tǒng)會把當(dāng)前類的serialVersionUID寫入到序列化文件中,當(dāng)反序列化時(shí)系統(tǒng)會去檢測文件中的serialVersionUID,判斷它是否與當(dāng)前類的serialVersionUID一致,如果一致就說明序列化類的版本與當(dāng)前類版本是一樣的,可以反序列化成功,否則失敗。
生成 serialVersionUID
1.首先實(shí)現(xiàn)類需要實(shí)現(xiàn)Serializable接口

2.點(diǎn)擊File--> settings,在settings的搜索框搜索serializable,然后在一以下兩個(gè)地方打上勾

3.最后選中要生成serialVersionUID的類的類名,按住Alt+Enter即可生成

總結(jié)
到此這篇關(guān)于IDEA生成serialVersionUID的文章就介紹到這了,更多相關(guān)IDEA生成serialVersionUID內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
關(guān)于@Autowierd && @Resource 你真的了解嗎
這篇文章主要介紹了關(guān)于@Autowierd && @Resource的具體使用,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08
IDEA開發(fā)并部署運(yùn)行WEB項(xiàng)目全過程
文章介紹了WEB項(xiàng)目標(biāo)準(zhǔn)結(jié)構(gòu)及部署方法,涵蓋目錄劃分(如WEB-INF、classes、lib)、核心文件(web.xml、index.html),以及三種部署方式:直接放置webapps、war包部署、自定義路徑配置,同時(shí)說明了IDEA中如何關(guān)聯(lián)Tomcat、配置項(xiàng)目結(jié)構(gòu)及部署原理2025-07-07
SpringBoot擴(kuò)展SpringMVC原理并實(shí)現(xiàn)全面接管
這篇文章主要介紹了SpringBoot擴(kuò)展SpringMVC原理并實(shí)現(xiàn)全面接管,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11
Java微信公眾平臺開發(fā)(14) 微信web開發(fā)者工具使用
這篇文章主要為大家詳細(xì)介紹了Java微信公眾平臺開發(fā)第十四步,微信web開發(fā)者工具的使用方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04
Myeclipse鏈接Oracle等數(shù)據(jù)庫時(shí)lo exception: The Network Adapter coul
今天小編就為大家分享一篇關(guān)于Myeclipse鏈接Oracle等數(shù)據(jù)庫時(shí)lo exception: The Network Adapter could not establish the connection,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-03-03
SpringBoot靜態(tài)資源css,js,img配置方案
這篇文章主要介紹了SpringBoot靜態(tài)資源css,js,img配置方案,下文給大家分享了三種解決方案,需要的朋友可以參考下2017-07-07
java中JVM中如何存取數(shù)據(jù)和相關(guān)信息詳解
這篇文章主要介紹了JVM中如何存取數(shù)據(jù)和相關(guān)信息詳解,Java源代碼文件(.java后綴)會被Java編譯器編譯為字節(jié)碼文件,然后由JVM中的類加載器加載各個(gè)類的字節(jié)碼文件,加載完畢之后,交由JVM執(zhí)行引擎執(zhí)行。JVM中怎么存取數(shù)據(jù)和相關(guān)信息呢?,需要的朋友可以參考下2019-06-06

