배경 : 쿼리 개발중, union all 로 조회하는 영역중 일부를 제거하고 조회해보려고하는데, DBMS 툴에서는 정상 조회되나, 시스템에서는 먹히지 않는 현상 발생으로 당황함
내용 :
Mybatis에서 동적쿼리 #{param} 가 사용된 곳에 주석 처리를 하면 아래와 같이 오류가 발생한다.
java.sql.SQLSyntaxErrorException: (conn=554682) Could not set parameter at position
mybatis에서는 -- 주석이나 또는 /* */ 주석안에 #{파라미터} 를 감싸게 되면
주석 내에 있는 코드여도 파라미터를 지정하는 대상으로 판단한다고 한다.
그래서 #{} 코드를 주석처리하려면 아래와 같이 사용해야 한다.
<!-- #{} --> : 사용 가능
/* #{} */ : 오류
-- #{} : 오류
[Mybatis] 주석으로 인한 파라미터 세팅 오류
Mybatis에서 동적쿼리 mybatis에서는 -- 주석이나 또는 /\* \*/ 주석안에 주석 내에 있는 코드여도 파라미터를 지정하는 대상으로 판단한다고 한다. 그래서 \`\`\` text
velog.io
728x90