MyBatis를 사용하다가 오류가 났다..
Caused by: org.apache.ibatis.type.TypeException: Error setting null for parameter #8 with JdbcType OTHER . Try setting a different JdbcType for this parameter or a different jdbcTypeForNull configuration property. Cause: java.sql.SQLException: 부적합한 열 유형: 1111
<insert id="insertHost" parameterType="UsersVo">
INSERT INTO USERS
( ID, USER_ID, PASSWORD, EMAIL, TEL, NAME, WHERES, ROLE, JOIN_DATE, LAST_LOGIN, BUSINESS_ID )
VALUES
( USERS_SEQ.NEXTVAL, #{userId}, #{password}, #{email}, #{tel}, #{name}, #{wheres}, #{role}, SYSDATE, SYSDATE, #{businessVo.id} )
</insert>
UsersVo가 BusinessVo 를 가지고 있는 상황인데
BusinessVo의 id를 못 읽는 상황이었다 ㅠ
jdbcType이 아니라고 하는 거 같았다
<insert id="insertHost" parameterType="UsersVo">
INSERT INTO USERS
( ID, USER_ID, PASSWORD, EMAIL, TEL, NAME, WHERES, ROLE, JOIN_DATE, LAST_LOGIN, BUSINESS_ID )
VALUES
( USERS_SEQ.NEXTVAL, #{userId}, #{password}, #{email}, #{tel}, #{name}, #{wheres}, #{role}, SYSDATE, SYSDATE, #{businessVo.id, jdbcType=VARCHAR} )
</insert>
그래서 #{businessVo.id , jdbcType=VARCHAR} 라고
비즈니스vo의 id를 바차로 쓴 거야 라고 명시해주니
잘 동작한다...ㅎㅎ
마이바티스는 jpa에 비해 거의 모든 것이 수동이라...하..힘들다
다들 왜 jpa를 신기술이라고 선호하는지 알겠음 ㅠㅠ 우씨
728x90