header-img
Info :
$ 1
Mybatis :: ๋‹ฌ๋Ÿฌ($)์™€ ์ƒต(#)์˜ ์ฐจ์ด
2024.01.16
ํŒŒ๋ผ๋ฏธํ„ฐ ๋งคํ•‘์„ ํ•˜๋Š” ๋ฐ์— ์‚ฌ์šฉํ•˜๋Š” $์™€ # ๋‘๊ฐ€์ง€์˜ ์ฐจ์ด์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ๋‹ค. # PreparedStatement๋ฅผ ์˜๋ฏธ ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ String ํ˜•ํƒœ๋กœ ๋“ค์–ด์™€ ์ž๋™์œผ๋กœ(' ') ํŒŒ๋ผ๋ฏธํ„ฐ ํ˜•ํƒœ๊ฐ€ ๋จ #{user_id} ์˜ ๊ฐ’์ด 'neeon'์ด๋ผ๋ฉด user_id = 'neeon' ํ˜•ํƒœ๊ฐ€ ๋จ ์ฟผ๋ฆฌ ์ฃผ์ž…์„ ์˜ˆ๋ฐฉํ•  ์ˆ˜ ์žˆ์–ด ๋ณด์•ˆ ์ธก๋ฉด์—์„œ ์œ ๋ฆฌ ์ •์ ์ธ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์บ์‹ฑ์„ ํ•ด์„œ ์žฌํ™œ์šฉํ•  ์ˆ˜ ์žˆ์–ด์„œ ํšจ์œจ์ ์ž„ $ Statement๋ฅผ ์˜๋ฏธ ํ•ด๋‹น ์ปฌ๋Ÿผ์˜ ์ž๋ฃŒํ˜•์— ๋งž์ถ”์–ด ํŒŒ๋ผ๋ฏธํ„ฐ์˜ ์ž๋ฃŒํ˜•์ด ๋ณ€๊ฒฝ๋จ ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ๋ฐ”๋กœ ์ถœ๋ ฅ๋จ. ์ฟผ๋ฆฌ ์ฃผ์ž…์„ ์˜ˆ๋ฐฉํ•  ์ˆ˜ ์—†์–ด ๋ณด์•ˆ ์ธก๋ฉด์—์„œ ๋ถˆ๋ฆฌํ•˜๋ฏ€๋กœ ์‚ฌ์šฉ์ž์˜ ์ž…๋ ฅ์„ ์ „๋‹ฌํ•  ๋•Œ๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ (SQL Injection) ํ…Œ์ด๋ธ”์ด๋‚˜ ์ปฌ๋Ÿผ๋ช…์„ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ์ „๋‹ฌํ•˜๊ณ  ์‹ถ์„ ๋•Œ ์‚ฌ์šฉํ•จ ์ฐจ์ด์  ..