你好StackOverflowers,MyBatis - 根據javaType的返回結果地圖
有一些我沒有得到關於MyBatis resultMap。
我工作的這個模型beeing更新。我們決定創建一個反映我們未來數據庫模式的對象的新圖形(當前的圖形很糟糕)。
總結我們的問題,這裏是一個簡單的例子: 當前對象whith與表SITE相關的是org.example.model.SiteModel
。我們創建了一個名爲org.example.entity.Site
的新對象。 (包名稱是臨時的)。
目標是現在使用開發的MyBatis感謝的現有SQL請求,並添加一個新的ResultMap鏈接到我們的方法的返回類型。
這裏有一個例子:
/**
* Get all site defined as template.
*/
@Select("SELECT * FROM SITE WHERE ISTEMPLATE = 'True'")
@ResultMap({"siteResMap" , "siteResultMap"})
@Options(statementType = StatementType.CALLABLE)
<T> List<T> findTemplates();
然後,在一個XML配置文件中,我們定義了以下映射:
...
<resultMap id="siteResMap" type="org.example.entity.Site" />
<resultMap id="siteResultMap" type="org.example.model.SiteModel" />
...
然後我們調用方法從我們的DAO:
List<Site> site = siteDao.findTemplates();
List<SiteModel> siteMod = siteDao.findTemplates();
我們期待從這是MyBatis的動態解釋,採取正確的Resul tMap根據計算的返回類型。
但是這兩個列表都顯示爲List<org.example.entity.Site>
from debuger。
這讓我覺得第一的ResultMap取,忽略了第二個。
我錯過了什麼嗎?有沒有辦法讓MyBatis以這種方式行事?
問候