0
插入列表
ExportQueue.java
public class ExportQueue implements Serializable {
private List<String> errors;
public List<String> getErrors() {
return errors;
}
public void setErrors(List<String> errors) {
this.errors = errors;
}
public void addError(String error) {
if(this.errors == null) this.errors = new ArrayList<String>();
this.errors.add(error);
}
}
我已經定義這個resultMap的...
ExportQueueDao.xml
<mapper namespace="...">
<resultMap id="exportQueueResultMap" type="...ExportQueue">
<result property="errors" column="errors"
typeHandler="...CommaSeparatedStringListTypeHandler" />
</resultMap>
</mapper>
ExportQueueDao.java
@Insert(INSERT_UPDATE)
@Options(useGeneratedKeys = true, keyProperty = "id")
int insertOrUpdate(ExportQueue ExportQueue);
我有一個CommaSeparatedStringListTypeHandler定義,但是當我嘗試插入的對象,我得到一個錯誤。據我瞭解INSERT不使用ResultMap,因此看不到TypeHander,因此它不知道如何處理List錯誤。
這是錯誤我設置當前得到...
Caused by: org.apache.ibatis.executor.ExecutorException: There was no TypeHandler found for parameter errors of statement ....dao.ExportQueueDao.insertOrUpdate
如何配置這使MyBatis的知道做什麼用的List<String> errors
?
@kasdega你可以用這個結果圖進行任何操作,我的意思是任何操作都可以用這個結果圖成功或者全部失敗。我想你錯過了一些表達,你可以把完整的map.xml或這個完整的map.xml? – erhun
在該dao.xml文件的其餘部分是平安無事,我已經有意留出來爲簡潔起見,是的,如果我完全刪除了錯誤欄中它工作正常。 – kasdega
您嘗試定義custome類型處理程序,那麼您的CommaSeparatedStringListTypeHandler類實現在哪裏? – erhun