類結構:
介面類:criteria
public
inte***ce
criteria
實現類1:andcriteria
@data
public
class
andcriteria
implements
criteria
實現類2:orcriteria
@data
public
class
orcriteria
implements
criteria
場景
controller層有乙個介面
public
void ***x(@requestbody criteria criteria)
此時直接接收會報錯如下:
解決方案
使用jackson的@jsonsubtypes註解
@jsontypeinfo
( use = jsontypeinfo.id.name,
include = jsontypeinfo.as.property,
property =
"type"
//傳遞引數必備的字段
)@jsonsubtypes()
public
inte***ce
criteria
jsontypeinfo.as.property:type做為請求報文字段帶入,值就是下邊定義的and、or。要是不存在對應型別會報異常。此處還有其他的型別可以搜一下,常用的還是這個。報文如下格式:
, ***x:***x //其他的字段
}
多型問題解析
首先,什麼是多型?多型 多種形態 class 動物 class 貓 extends 動物 把貓看成貓 貓 mao new 貓 常態 把貓看成動物 動物 mao new 貓 多型 把子類型別的物件看成了父類型別 貓 mao new 動物 錯誤的 多型 父類型別的引用指向了子類物件 多型的前提條件 存在...
ruby cucumber環境配置問題及解決方法
一 安裝ruby 安裝完之後在命令視窗執行ruby v 提示ruby 不是內部命令或外部命令,也不是可執行的程式或批處理檔案 原因 安裝的時候提示說自動新增path 什麼的,那 兩個選項都應該打鉤 二 安裝devkit 的安裝目錄 在命令列下轉到devkit 的目錄 執行 ruby dk.rb in...
springMVC整合dubbo問題及解決方法
1.註解方式,提供者正常,但消費者獲取不到物件,提示空指標 測試過程中發現service必須宣告為static才可以正常使用。原因分析 與註解順序有關 解決方法 指定springmvc與dubbo註解掃瞄的順序 2.警告 多個不同應用註冊了相同服務,請檢查aaa provider和bbb provi...