[리팩토링 일기] Mybatis param NPE 발생이 안돼!

@Update("UPDATE ORDERS SET DELETED_DATE = NOW() WHERE id = #{id,jdbcType=BIGINT}")
    public boolean deleteSoftly(@Param("id") Long id);
  • 에서 Long 에 NULL 을 방지하려고 어떻게든 시도해봤다
  1. @NonNull 도 안돼고

.. 등등..

찾아보니

[MyBatis] null 파라미터 , 그리고 jdbc-type-for-null 세팅
null 처리와 jdbc-type-for-null 에 관한 글
https://velog.io/@dailylifecoding/mybatis-null-parameter-and-jdbc-type-for-null-configuration
  • 자체적으로

PreparedStatement 에서 NULL이 들어오게 된다면

자동적으로 해당 NULL 을 -1111 로 세팅한다.

ID 값이 음수로 적힐 일은 불가능하기에

parameter null 체크는

불필요하다고 생각하고 해당 테스트는 넘기는 것으로 결정하였다.


Uploaded by N2T