問題描述:
單元測試一個已離職同僚的接口,運作時提示 po 類中的某個屬性字段的映射找不到
問題分析:
根據描述的異常資訊,在類中找到了該屬性,set get 均有,mapper.xml 中映射也存在
檢查代碼版本,曆史版本生産環境運作正常,于是對比此次新增的代碼
定位到了問題所在,
po 類中 描述使用者類型的字段,用的 isXXX
po 類中 又定義了常量 IsXXX 與 屬性字段僅僅首字母不同
是以,Mapper.xml 中的檔案在做映射處理時,首先映射的是常量的定義的字段,而該字段又沒有SET GET ,因而報錯
問題總結:
1.常量不要寫在PO類中,而要單獨寫在 constant 類中
2.Boolean 類型的屬性,不要以 is開頭