๋ณ์์ ์ธ
2
Javascript :: ๋์ ์ผ๋ก ๋ณ์ ์์ฑ
2024.11.26
// ๊ฐ์ฒด ์์ฑlet dynamicVars = {};// ๋์ ์ผ๋ก ๋ณ์๋ช
์์ฑfor (let i = 0; i ์ด๋ ๊ฒ ๋ฌด์ง์ฑ ๋ณ์๋ ์ ์ธํ ์ ์๊ณ ,${i} ๋์ ๊ธฐ์กด์ ์ ์ธํด๋์๋ ๋ณ์๋ค์ ์ฌ์ฉํ ์๋ ์๋ค. ๋์ ๊ฒฝ์ฐ์๋ ๋ฐฐ์ด ์์ ๊ฐ์ ํด๋นํ๋ ๋ฐ์ดํฐ์ ๊ฒ์ฆํ ๊ฒฐ๊ณผ๋ฅผ ์ ์ฅํด๋ฌ์ผ ํด์ ๋์ ๋ณ์๋ฅผ ๊ตฌํํ๊ฒ ๋์์. ์๋ฅผ ๋ค๋ฉด ๊ทธ๋ฆฌ๋์์ ๋ฐฐ์ด[] ์์ ์๋ ๊ฐ๊ณผ ์ด๋ฆ์ด ๊ฐ์ ์ปฌ๋ผ์ ๋ฐ์ดํฐ๋ฅผ ํ์ธํ๋ ์ผ์ด๋ค.๊ทธ๋๋ ์๋์ ๊ฐ์ด ๋ณํํด์ ์ฌ์ฉํ ์๋ ์๋ค. const checkColumns = ['Nation', 'Dept', 'Name', 'Age'] _.forEach(dataList, (row, index) => { let dynamicVars = {}; // ๋์ ์ผ๋ก ๋ณ์๋ช
์์ฑ for (let i ..
Mybatis :: ๋ฌ๋ฌ($)์ ์ต(#)์ ์ฐจ์ด
2024.01.16
ํ๋ผ๋ฏธํฐ ๋งคํ์ ํ๋ ๋ฐ์ ์ฌ์ฉํ๋ $์ # ๋๊ฐ์ง์ ์ฐจ์ด์ ๋ํด ์์๋ณด๋๋ก ํ๊ฒ ๋ค. # PreparedStatement๋ฅผ ์๋ฏธ ํ๋ผ๋ฏธํฐ๊ฐ String ํํ๋ก ๋ค์ด์ ์๋์ผ๋ก(' ') ํ๋ผ๋ฏธํฐ ํํ๊ฐ ๋จ #{user_id} ์ ๊ฐ์ด 'neeon'์ด๋ผ๋ฉด user_id = 'neeon' ํํ๊ฐ ๋จ ์ฟผ๋ฆฌ ์ฃผ์
์ ์๋ฐฉํ ์ ์์ด ๋ณด์ ์ธก๋ฉด์์ ์ ๋ฆฌ ์ ์ ์ธ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ์บ์ฑ์ ํด์ ์ฌํ์ฉํ ์ ์์ด์ ํจ์จ์ ์ $ Statement๋ฅผ ์๋ฏธ ํด๋น ์ปฌ๋ผ์ ์๋ฃํ์ ๋ง์ถ์ด ํ๋ผ๋ฏธํฐ์ ์๋ฃํ์ด ๋ณ๊ฒฝ๋จ ํ๋ผ๋ฏธํฐ๊ฐ ๋ฐ๋ก ์ถ๋ ฅ๋จ. ์ฟผ๋ฆฌ ์ฃผ์
์ ์๋ฐฉํ ์ ์์ด ๋ณด์ ์ธก๋ฉด์์ ๋ถ๋ฆฌํ๋ฏ๋ก ์ฌ์ฉ์์ ์
๋ ฅ์ ์ ๋ฌํ ๋๋ ์ฌ์ฉํ์ง ์์ (SQL Injection) ํ
์ด๋ธ์ด๋ ์ปฌ๋ผ๋ช
์ ํ๋ผ๋ฏธํฐ๋ก ์ ๋ฌํ๊ณ ์ถ์ ๋ ์ฌ์ฉํจ ์ฐจ์ด์ ..