728x90
๋ฐ˜์‘ํ˜•

์ „์ฒด ๊ธ€ 1184

[MyBatis] #{} ๊ณผ ${} ์˜ ์ฐจ์ด

#{ } - ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ String ํ˜•ํƒœ๋กœ ๋“ค์–ด์™€์„œ 'ํŒŒ๋ผ๋ฏธํ„ฐ' ํ˜•ํƒœ๊ฐ€ ๋œ๋‹ค. ex) id๊ฐ’์ด aaa์ด๋ฉด id = #{id} ๊ฐ€ id='aaa' ๋กœ ๋“ค์–ด๊ฐ„๋‹ค. - ์ฟผ๋ฆฌ ์ฃผ์ž…์„ ์˜ˆ๋ฐฉํ•  ์ˆ˜ ์žˆ์–ด ๋ณด์•ˆ์ธก๋ฉด์—์„œ ์œ ๋ฆฌํ•˜๋‹ค. ${ } - ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ๋ฐ”๋กœ ์ถœ๋ ฅ๋œ๋‹ค. - ํ•ด๋‹น ์ปฌ๋Ÿผ์˜ ์ž๋ฃŒํ˜•์— ๋งž์ถฐ ํŒŒ๋ผ๋ฏธํ„ฐ ์ž๋ฃŒํ˜•๋„ ๋ณ€๊ฒฝ๋œ๋‹ค. - ์ฟผ๋ฆฌ ์ฃผ์ž…์„ ์˜ˆ๋ฐฉํ•  ์ˆ˜ ์—†์–ด ๋ณด์•ˆ์ธก๋ฉด์—์„œ๋Š” ๋ถˆ๋ฆฌํ•˜๋‹ค. ๊ทธ๋ฆฌํ•˜์—ฌ ์‚ฌ์šฉ์ž์˜ ์ž…๋ ฅ์„ ์ „๋‹ฌํ•  ๋•Œ๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ๋‚ซ๋‹ค. - ํ…Œ์ด๋ธ”์ด๋‚˜ ์ปฌ๋Ÿผ๋ช…์„ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ์ „๋‹ฌํ•˜๊ณ  ์‹ถ์„ ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. ์ฟผ๋ฆฌ์ฃผ์ž… (SQL Injection)์ด๋ž€? - ์•…์˜์ ์ธ ์‚ฌ์šฉ์ž๊ฐ€ ๋ณด์•ˆ์ƒ์˜ ์ทจ์•ฝ์ ์„ ์ด์šฉํ•˜์—ฌ, ์ž„์˜์˜ SQL ๋ฌธ์„ ์ฃผ์ž…ํ•˜๊ณ  ์‹คํ–‰๋˜๊ฒŒ ํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ๋น„์ •์ƒ์ ์ธ ๋™์ž‘์„ ํ•˜๋„๋ก ์กฐ์ž‘ํ•˜๋Š” ํ–‰์œ„. - ์ธ์ ์…˜ ๊ณต๊ฒฉ์€ OWA..

JAVA/SPRING 2022.01.03

[HTML] <label> ํƒœ๊ทธ

- ํƒœ๊ทธ๋Š” ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค(UI) ์š”์†Œ์˜ ๋ผ๋ฒจ(label)์„ ์ •์˜ํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. - ์š”์†Œ๋Š” for ์†์„ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ์š”์†Œ์™€ ๊ฒฐํ•ฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด๋•Œ ์š”์†Œ์˜ for ์†์„ฑ๊ฐ’์€ ๊ฒฐํ•ฉํ•˜๊ณ ์ž ํ•˜๋Š” ์š”์†Œ์˜ id ์†์„ฑ๊ฐ’๊ณผ ๊ฐ™์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค. ( ์š”์†Œ๋ฅผ ๊ฒฐํ•ฉํ•˜๊ณ ์ž ํ•˜๋Š” ์š”์†Œ ๋‚ด๋ถ€์— ์œ„์น˜์‹œํ‚ค๋ฉด for ์†์„ฑ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋”๋ผ๋„ ํ•ด๋‹น ์š”์†Œ์™€ ๊ฒฐํ•ฉ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ) - ์ด๋Ÿฌํ•œ ์š”์†Œ๋Š” ๋ธŒ๋ผ์šฐ์ €์— ์˜ํ•ด ์ผ๋ฐ˜์ ์ธ ํ…์ŠคํŠธ๋กœ ๋žœ๋”๋ง๋˜์ง€๋งŒ, ์‚ฌ์šฉ์ž๊ฐ€ ๋งˆ์šฐ์Šค๋กœ ํ•ด๋‹น ํ…์ŠคํŠธ๋ฅผ ํด๋ฆญํ•  ๊ฒฝ์šฐ ์š”์†Œ์™€ ์—ฐ๊ฒฐ๋œ ์š”์†Œ๋ฅผ ๊ณง๋ฐ”๋กœ ์„ ํƒํ•  ์ˆ˜ ์žˆ์–ด ์‚ฌ์šฉ์ž์˜ ํŽธ์˜์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. - ์š”์†Œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์š”์†Œ : , , , , , ,

Front/HTML 2022.01.03

[Spring][Spring Security]BCryptPasswordEncoder

BCryptPasswordEncoder์ด๋ž€? - ์Šคํ”„๋ง ์‹œํ๋ฆฌํ‹ฐ(Spring Seurity) ํ”„๋ ˆ์ž„์›Œํฌ์—์„œ ์ œ๊ณตํ•˜๋Š” ํด๋ž˜์Šค ์ค‘ ํ•˜๋‚˜๋กœ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์•”ํ˜ธํ™”ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ๊ฐ€์ง„ ํด๋ž˜์Šค ์Šคํ”„๋ง ์‹œํ๋ฆฌํ‹ฐ๋ž€? ์ž๋ฐ” ์„œ๋ฒ„ ๊ฐœ๋ฐœ์„ ์œ„ํ•ด ํ•„์š”๋กœ ํ•œ ์ธ์ฆ, ๊ถŒํ•œ ๋ถ€์—ฌ ๋ฐ ๊ธฐํƒ€ ๋ณด์•ˆ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ํ”„๋ ˆ์ž„์›Œํฌ (ํด๋ž˜์Šค์™€ ์ธํ„ฐํŽ˜์ด์Šค ๋ชจ์ž„) - PasswordEncoder ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•œ ํด๋ž˜์Šค - BCryptPasswordEncoder๋Š” BCrypt ํ•ด์‹ฑ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ธ์ฝ”๋”ฉ ํ•ด์ฃผ๋Š” ๋ฉ”์„œ๋“œ์™€ ์‚ฌ์šฉ์ž์— ์˜ํ•ด ์ œ์ถœ๋œ ๋น„๋ฐ€๋ฒˆํ˜ธ์™€ ์ €์žฅ์†Œ์— ์ €์žฅ๋˜์–ด ์žˆ๋Š” ๋น„๋ฐ€๋ฒˆํ˜ธ์™€์˜ ์ผ์น˜์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•ด์ฃผ๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ์ œ๊ณต - ์ƒ์„ฑ์ž์˜ ์ธ์ž ๊ฐ’(verstion, strength, SecureRandom instance)์„ ..

JAVA/SPRING 2022.01.03

[spring][mybatis] ๋ถ€์ ํ•ฉํ•œ ์—ด ์œ ํ˜• error

์‹ฌ๊ฐ: ๊ฒฝ๋กœ [/mbti]์˜ ์ปจํ…์ŠคํŠธ ๋‚ด์˜ ์„œ๋ธ”๋ฆฟ [appServlet]์„(๋ฅผ) ์œ„ํ•œ Servlet.service() ํ˜ธ์ถœ์ด, ๊ทผ๋ณธ ์›์ธ(root cause)๊ณผ ํ•จ๊ป˜, ์˜ˆ์™ธ [Request processing failed; nested exception is org.springframework.jdbc.UncategorizedSQLException: Error setting null for parameter #1 with JdbcType OTHER . Try setting a different JdbcType for this parameter or a different jdbcTypeForNull configuration property. Cause: java.sql.SQLException: ๋ถ€์ ํ•ฉํ•œ ์—ด..

JAVA/SPRING 2021.12.31
728x90
๋ฐ˜์‘ํ˜•