Error๐Ÿšซ

[์—๋Ÿฌ] Spring / There is no getter for property named

์ฝ”๋”999 2022. 12. 23. 13:05

๊ฐœ๋ฐœํ™˜๊ฒฝ : STS (Spring Legacy Project)

 

์นดํ…Œ๊ณ ๋ฆฌ ๊ธฐ๋Šฅ ๊ตฌํ˜„ ์ค‘ "There is no getter for property named 'category(์ปฌ๋Ÿผ๋ช…)' in 'class.java.lang.String'" ์ด๋ผ๋Š”

์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค. ์ฐธ๊ณ ํ–ˆ๋˜ ์ž๋ฃŒ์™€ ๋™์ผํ•˜๊ฒŒ ์ฟผ๋ฆฌ๋ฌธ์„ ์ž‘์„ฑํ–ˆ๊ณ , SqlDeveloper ์—์„œ๋„ ๋Œ์•„๊ฐ”๋Š”๋ฐ..

 

 

๊ทธ๋Ÿฌ๋‚˜ but..! ๋””๋ฒจ๋กœํผ์—์„œ๋„ ์ž˜ ๋Œ์•„๊ฐ”๋˜ ์ฟผ๋ฆฌ๋ฌธ์—๋Š” ์ด์ƒ์ด ์—†์—ˆ๊ณ , ๋ฌธ์ œ๋Š” ์•„๋ž˜์˜ ์ฝ”๋“œ์— ์žˆ์—ˆ๋‹ค.

<--! ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•œ ์ฝ”๋“œ -->

<select id="countTagList" parameterType="String" resultType="int">
	select count(*) from product
	<if test="category != null and category != ''">
		where cateGory = #{category}
	</if>
</select>

 

ํŒŒ๋ผ๋ฏธํ„ฐ ํƒ€์ž…์ด String ์ด๋ฉด์„œ ๋„˜์–ด์˜จ ํŒŒ๋ผ๋ฏธํ„ฐ๋ช… category๋ฅผ ๋™์  if๋ฌธ์œผ๋กœ ๋ฐ›์„ ๊ฒฝ์šฐ์— ๋ฐœ์ƒํ•œ ์—๋Ÿฌ๋ผ๊ณ  ํ•œ๋‹ค.

๋™์ ์ฟผ๋ฆฌ์—์„œ if๋ฌธ์€ ํŒŒ๋ผ๋ฏธํ„ฐ ํƒ€์ž… ํด๋ž˜์Šค์˜ getter๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๋ฐฉ์‹์ธ๋ฐ,

String ๋‚ด๋ถ€์—๋Š” getter ๊ฐœ๋…์ด ์ •์˜๋˜์–ด ์žˆ์ง€ ์•Š๋‹ค๊ณ  ํ•œ๋‹ค.

 

๋”ฐ๋ผ์„œ, parameter๋ฅผ cateGory๋กœ ๋ณด๋ƒˆ์–ด๋„ ๋งˆ์ด๋ฐ”ํ‹ฐ์Šค์—์„œ ๋‹จ์ผ๊ฐ’์ผ ๊ฒฝ์šฐ ์ž„์˜์˜ value๋กœ ๋ฐ›์•„์ฃผ๋ฉด ์ฒ˜๋ฆฌ ๊ฐ€๋Šฅ.

<!-- ์ˆ˜์ •ํ•œ ์ฝ”๋“œ 1 -->

<select id="countTagList" parameterType="String" resultType="int">
	select count(*) from product
	where 1=1
	<if test="value != null and value != ''">
		and prd_category = #{value}
	</if>
</select>

 

ํ•ญ์ƒ ์ฐธ์„ ์˜๋ฏธํ•˜๋Š” "where 1=1" ์€ ๊ด€๋ จํ•ด์„œ๋Š” ์‚ฌ์šฉ์„ ์ง€์–‘ํ•ด์•ผํ•œ๋‹ค ์•„๋‹ˆ๋‹ค ์˜๊ฒฌ์ด ์ข€ ์žˆ๋Š” ๊ฒƒ ๊ฐ™์•„์„œ

๊ณต๋ถ€๋ฅผ ๋” ํ•ด๋ด์•ผ๊ฒ ์ง€๋งŒ,  where์ ˆ์„ ์•„๋ž˜์™€ ๊ฐ™์ด ํ‘œํ˜„ํ•  ์ˆ˜๋„ ์žˆ๋‹ค๊ณ  ํ•œ๋‹ค.

๊ฒฐ๊ณผ๋Š” ์œ„ ์ฝ”๋“œ์™€ ๋™์ผํ•˜๋‹ค. 

<!-- ์ˆ˜์ •ํ•œ ์ฝ”๋“œ 2 -->

<select id="countTagList" parameterType="String" resultType="int">
	select count(*) from product
	<where>
		<if test="value != null and value != ''">
			and prd_category = #{value}
		</if>
	</where>
</select>

 

 

 

 

 

์ฐธ๊ณ )  ์—๋Ÿฌ๋ฉ”์„ธ์ง€ ๊ด€๋ จ

https://bcdragonfly.tistory.com/10

 

[mybatis] There is no getter for property named : ํŒŒ๋ผ๋ฏธํ„ฐ ํ•˜๋‚˜ ์ผ๋•Œ ์—๋Ÿฌ

org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'param' in 'class java.lang.String' ๋ถ„๋ช…ํžˆ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์ž˜ ๋„˜๊ฒจ์ฃผ์—ˆ๊ณ  ๋งˆ์ด๋ฐ”ํ‹ฐ์Šค์—์„œ๋„ ์ž˜ ๋ฐ›์•˜๋Š”๋ฐ๋„ ๋ถˆ๊ตฌํ•˜๊ณ ... ํ™ฉ๋‹นํ•œ ์—๋Ÿฌ๊ฐ€ ๋œจ

bcdragonfly.tistory.com

 

 

์ฐธ๊ณ ) ๋งˆ์ด๋ฐ”ํ‹ฐ์Šค ๋™์ ์ฟผ๋ฆฌ ๊ด€๋ จ

 https://devscb.tistory.com/60

 

Mybatis(๋งˆ์ด๋ฐ”ํ‹ฐ์Šค) ๋™์  ์ฟผ๋ฆฌ if๋ฌธ ๋ฌธ๋ฒ•, Mybatis(๋งˆ์ด๋ฐ”ํ‹ฐ์Šค) <if> ์‚ฌ์šฉ๋ฒ•, Mybatis(๋งˆ์ด๋ฐ”ํ‹ฐ์Šค) <if>์‚ฌ

Mybatis(๋งˆ์ด๋ฐ”ํ‹ฐ์Šค) ๋™์  ์ฟผ๋ฆฌ if๋ฌธ ๋ฌธ๋ฒ•, Mybatis(๋งˆ์ด๋ฐ”ํ‹ฐ์Šค) ์‚ฌ์šฉ๋ฒ•, Mybatis(๋งˆ์ด๋ฐ”ํ‹ฐ์Šค) ์‚ฌ์šฉ๋ฐฉ๋ฒ•, Mybatis(๋งˆ์ด๋ฐ”ํ‹ฐ์Šค) if ๊ฒ€์‚ฌ๋ฐฉ๋ฒ• Mybatis(๋งˆ์ด๋ฐ”ํ‹ฐ์Šค)๋Š” DBMS์—‘์„ธ์Šค๋ฅผ ์‰ฝ๊ฒŒ ์‚ฌ์šฉํ• ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” Java

devscb.tistory.com

 

์ฐธ๊ณ ) where 1=1 ๊ตฌ๋ฌธ ๊ด€๋ จ

https://jdm.kr/blog/7

 

Oracle WHERE 1=1 ๊ตฌ๋ฌธ์— ๋Œ€ํ•˜์—ฌ :: JDM's Blog

์ด๋ฒˆ์—” ์˜ค๋ผํด์—์„œ WHERE 1=1์— ๋Œ€ํ•˜์—ฌ ํฌ์ŠคํŒ…์„ ํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ํ•ด๋‹น ํฌ์ŠคํŒ…์€ ์ด๋ฏธ ๋„ค์ด๋ฒ„ ๋ธ”๋กœ๊ทธ์—์„œ ํ•œ๋ฒˆ ํ–ˆ์—ˆ๋‹ค(2013.03.18). ํ•˜์ง€๋งŒ ์˜›๋‚  ๊ฒƒ์ด๊ธฐ๋„ ํ•˜๊ณ  ์ง€๊ธˆ์€ ๊ฐœ๋ฐœ๋ ฅ(?)์ด ์กฐ๊ธˆ์€ ์ƒ์Šน

jdm.kr