我正在尝试将ibatis代码转换为mybatis。我的ib提斯代码就像
try {
sqlMap.insert("insertinfo", insertData);
}
catch (SQLException sqle) {
Logger.error("error occurred while inserting",sqle);
}现在关于紫花莲,
try {
session.insert("insertinfo", insertData);
}
// what exception to catch ?? RuntimeSQLException or SqlSessionException
catch ( ?? sqle) {
Logger.error("error occurred while inserting",sqle);
}我试着同时使用RuntimeSQLException和SqlSessionException,两者都很好。但我不知道该用哪一种。
发布于 2017-11-08 19:36:21
我发现这篇文章时,我正在搜索类似的问题与铁线莲。这是我最初的问题。基于评论和我自己的研究,我试图给出答案。
SQLException被选中异常,并且mybatis只支持RuntimeException,因此您不能将SQLException与Mybatis一起使用。
SqlSessionException是Mybatis使用的RuntimeException。请参阅此
RunTimeSQLException基本上是SQLException上的一个包装器,以方便实际SQLException的传递,也就是说,JDBC驱动程序抛出的SQLException驱动程序与其他SQLException驱动程序不同,后者是与SQLException操作相关的异常。
https://stackoverflow.com/questions/46609547
复制相似问题