티스토리 뷰

[Java/Mybatis] There is no getter for property named... ...

 

mybatis 사용중 parameterType='string' 으로 1개의 파라미터를 받아서 쿼리를 작성할 때

이 값을 조건문 <if> 나 <when> 과 같은 mybatis dynamic query element에서 사용할려면 제목과 같은 오류가 나온다.

1. 오류코드

<delete id="deleteBoard" parameterType="string">
	delete from `board`
	<if test="null != board_id and !''.equals(board_id)">
		where `board_id` = #{ board_id }
	</if>
</delete>

이렇게 작성된 코드는 아마 There is no getter for property named board_id 라는 오류를 보게 될거다.

 

parameterType='map'으로 파라미터를 변경하거나 파라미터의 변수명을 value로 사용하면 문제를 해결할 수 있다.

2. 수정코드

<delete id="deleteBoard" parameterType="map">
	delete from `board`
	<if test="null != board_id and !''.equals(board_id)">
		where `board_id` = #{ board_id }
	</if>
</delete>

<!-- 또는 -->

<delete id="deleteBoard" parameterType="string">
	delete from `board`
	<if test="null != value and !''.equals(value)">
		where `board_id` = #{ board_id }
	</if>
</delete>

이렇게 변경을 해주자.

 

도움이 되셨다면 공감이나 좋아요 부탁드립니다~♡

광고를 클릭해주시면 더욱 감사하구요~♡v♡/

혹시 더 궁금하신 점이나 부족한 부분, 잘못된 내용이 있다면 댓글 부탁드립니다~~

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함