2017-10-06 10 views
1

ibatis 코드를 mybatis로 변환하려고합니다. 내 iBATIS를 코드는 mybatis RuntimeSQLException 대 ​​SqlSessionException

try { 
     session.insert("insertinfo", insertData); 
    } 
    // what exception to catch ?? RuntimeSQLException or SqlSessionException 
    catch (?? sqle) { 
     Logger.error("error occurred while inserting",sqle); 
    } 

내가 RuntimeSQLExceptionSqlSessionException 모두 작동 잘 모두 사용하려고 MyBatis로 지금

try { 
    sqlMap.insert("insertinfo", insertData); 
} 
catch (SQLException sqle) { 
    Logger.error("error occurred while inserting",sqle); 
} 

같다. 하지만 어느 것을 사용해야할지 모르겠습니다.

+0

사람이 어떤 대답을 가지고 있는가의 MyBatis 작업에 관련된 예외 다른 사람과 달리 JDBC 드라이버에 의해 발생 하나 즉 실제되는 SQLException의 통과를 용이하게하기 위해 예외 : SQLException에 대한 래퍼입니다? – user8710021

답변

1

mybatis와 (과) 비슷한 문제를 검색하는 동안이 게시물을 발견했습니다. This은 원래 가지고있는 질문입니다. 의견과 내 자신의 연구를 바탕으로 나는 대답을하려고합니다.

SQLException 예외가 확인되고 Mybatis는 RuntimeException 만 지원하므로 SQLException을 mybatis와 함께 사용할 수 없습니다.

SqlSessionException은 Mybatis에서 사용하는 RuntimeException입니다. refer this

RunTimeSQLException는 기본적으로 source