我創建了一個自定義query,它從新表中的不同表回傳資料。但是JPA無法將結果映射到我的DTO物件。
org.springframework.core.convert.ConverterNotFoundException: No converter found capable of converting from type [org.springframework.data.jpa.repository.query.AbstractJpaQuery$TupleConverter$TupleBackedMap] to type [model.myModel]
這是我的模型課
@Data
public class myModel {
private String name;
private Integer id;
}
和我的存盤庫custom query:
@Query(value = "SELECT name, id_tr AS id FROM (SELECT A.nombre name, D.id_transaccion from tableA A LEFT JOIN .... RESULTED WHERE RESULTED.id_tr IN (?1)", nativeQuery = true)
List<myModel> findNameOperation(List<Integer> idList);
問題是什么?我以與DTO表格中出現的欄位相同的方式命名 my 的屬性。我讀了這篇文章錯誤是“找不到能夠從型別 [java.lang.String] 轉換為型別 [com.marter.travel.model.Picture] 的轉換器”,但我沒有使用mongo,我的資料庫是mysql.
uj5u.com熱心網友回復:
將建構式添加到 myModel :
package foo;
public class myModel {
private String name;
private Integer id;
public myModel(String name, Integer id) {
this.name = name;
this.id = id;
}
//getter/setter
}
然后試試這個:
@Query(value = "SELECT new foo.myModel(name, id_tr AS id) FROM ....")
我不確定“AS id”。您可能必須將其洗掉。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/521165.html
