Object 與 T的差別 導致swagger 的model 顯示的數據為空


情景復現:

在整合swagger的時候,自己對原本定於的Object的data做了修改,把Object修改為了T,data的set方法的返回類型由於編譯器沒有報錯,就沒有去做修改,

這個時候就導致了,項目跑起來,訪問swagger-ui的時候出現data一直為Object的情況。而自己接口的數據結構無法展現給前台。而這個問題就是

由於 T 和 Object 的差異性引起的。

(因為自己是新引入swagger的菜鳥,而且自己對T和Object了解不夠深入。一直以為自己swagger配置出問題了,排查了很久。)

解決方式:

將data的set方法的返回類型從Object修改為T。

擴展學習:

Object 與 T的差異:

Object范圍非常廣,而T從一開始就會限定這個類型(包括它可以限定類型為Object)。

Object 是所有類的父類,所以需要強制類型轉換。

而T從一開始在編碼時(注意是在寫代碼時)就限定了某種具體類型,所以它不用強制類型轉換。

而我對data進行傳入的時候,返回類型是Object,這個時候返回給swagger-ui的data數據中就是Object了。

參考博客:https://www.cnblogs.com/yulinfeng/p/6056038.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM