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