2024/04 21

[security] ์„œ๋ฒ„ ๊ธฐ๋ฐ˜ ์ธ์ฆ(์ฟ ํ‚ค, ์„ธ์…˜)๊ณผ ํ† ํฐ ๊ธฐ๋ฐ˜ ์ธ์ฆ(JWT, oauth2)

์„œ๋ฒ„ ๊ธฐ๋ฐ˜ ์ธ์ฆ(์ฟ ํ‚ค, ์„ธ์…˜)๊ณผ ํ† ํฐ ๊ธฐ๋ฐ˜ ์ธ์ฆ(JWT, oauth2) ๋กœ๊ทธ์ธ์„ ๊ตฌํ˜„ ํ•˜๋ฉด์„œ ์ •๋ฆฌํ•œ ๋‚ด์šฉ ์ž…๋‹ˆ๋‹ค ! ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š” :) 1. ์„œ๋ฒ„ ๊ธฐ๋ฐ˜ ์ธ์ฆ, ํ† ํฐ ๊ธฐ๋ฐ˜ ์ธ์ฆ 2. ์ฟ ํ‚ค 3. ์„ธ์…˜ 4. JWT 5. oauth2 1. ์„œ๋ฒ„ ๊ธฐ๋ฐ˜ ์ธ์ฆ, ํ† ํฐ ๊ธฐ๋ฐ˜ ์ธ์ฆ ์‚ฌ์šฉ์ž๊ฐ€ ์„œ๋ฒ„์— ์ ‘๊ทผํ•  ๋•Œ, ์‚ฌ์šฉ์ž ์ธ์ฆ ํ™•์ธ ๋ฐฉ๋ฒ•์—๋Š” ์„œ๋ฒ„ ๊ธฐ๋ฐ˜ ์ธ์ฆ๊ณผ ํ† ํฐ ๊ธฐ๋ฐ˜ ์ธ์ฆ์ด ์žˆ๋‹ค. ์„œ๋ฒ„ ๊ธฐ๋ฐ˜ ์ธ์ฆ์—๋Š” ์ฟ ํ‚ค์™€ ์„ธ์…˜์ด ์žˆ๊ณ , ํ† ํฐ ๊ธฐ๋ฐ˜ ์ธ์ฆ์—๋Š” JWT์™€ oauth2๊ฐ€ ์žˆ๋‹ค. - ํ† ํฐ ๊ธฐ๋ฐ˜ ์ธ์ฆ ๋™์ž‘ ๊ณผ์ • ํ† ํฐ์€ ์„œ๋ฒ„์—์„œ ํด๋ผ์ด์–ธํŠธ๋ฅผ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•œ ์œ ์ผํ•œ ๊ฐ’์ด๋‹ค. ํ† ํฐ ๊ธฐ๋ฐ˜ ์ธ์ฆ์€ ๋ฌด์ƒํƒœ์„ฑ, ํ™•์žฅ์„ฑ, ๋ฌด๊ฒฐ์„ฑ์˜ 3๊ฐ€์ง€ ํŠน์ง•์ด ์žˆ๋‹ค. 1. ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์— ๋กœ๊ทธ์ธ์„ ์š”์ฒญํ•œ๋‹ค. 2. ์„œ๋ฒ„๋Š” ํ† ํฐ ์ƒ์„ฑ ํ›„ ์‘๋‹ตํ•œ๋‹ค...

[spring] spring security ๊ธฐ๋ณธ ๊ฐœ๋…

spring security ๊ธฐ๋ณธ ๊ฐœ๋… ์Šคํ”„๋ง ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ •๋ฆฌํ•œ ๋‚ด์šฉ ์ž…๋‹ˆ๋‹ค ! ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š” :) 1. spring security 2. ๋™์ž‘ ๊ณผ์ • 3. ์‚ฌ์šฉ ๋ฐฉ๋ฒ• 1. spring security ์Šคํ”„๋ง ๊ธฐ๋ฐ˜์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์ธ์ฆ, ๊ถŒํ•œ, ๊ด€๋ฆฌ, ๋ฐ์ดํ„ฐ ๋ณดํ˜ธ ๋“ฑ์˜ ๋ณด์•ˆ ์„ค์ •์„ ์œ„ํ•œ ํ”„๋ ˆ์ž„์›Œํฌ์ด๋‹ค. - ์ธ์ฆ ์‚ฌ์šฉ์ž์˜ ์‹ ์›์„ ํ™•์ธํ•˜๋Š” ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ์„ ๋‹ค๋ฃฌ๋‹ค. ํผ ๊ธฐ๋ฐ˜์˜ ๋กœ๊ทธ์ธ, OAuth, HTTP Basic ์ธ์ฆ ๋“ฑ์„ ์ง€์›ํ•œ๋‹ค. - ๊ถŒํ•œ ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž์— ๋Œ€ํ•ด ํŠน์ • ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ์ ‘๊ทผ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•œ๋‹ค. - ๋ณด์•ˆ ํ•„ํ„ฐ SecurityFilterChain์€ HTTP ๋ณด์•ˆ ํ•„ํ„ฐ๋“ค์˜ ์ฒด์ธ์„ ๊ตฌ์„ฑํ•˜๋Š” ์—ญํ• ์„ ํ•œ๋‹ค. ๋ณด์•ˆ์— ๋Œ€ํ•œ ์„ค์ •์„ ํ•  ๋•Œ ์ •์˜ํ•˜์—ฌ ์‚ฌ์šฉํ•œ๋‹ค. ์œ„์˜ ์„ค์ • ํด๋ž˜์Šค์—์„œ OAuth2..

[cs] ์›น ๊ฐœ๋ฐœ ๊ธฐ๋ณธ ๊ฐœ๋…

์›น ๊ฐœ๋ฐœ ๊ธฐ๋ณธ ๊ฐœ๋… ์›น ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ •๋ฆฌํ•œ ๋‚ด์šฉ ์ž…๋‹ˆ๋‹ค ! ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š” :) 1. ์›น 2. URL 3. HTTP 4. JSON, Content-type ํ—ค๋” 5. Web API, REST API 6. Request(GET, POST, PUT, DELETE) 7. Response(status code) 1. ์›น World Wide Web์œผ๋กœ ์ „ ์„ธ๊ณ„์ ์ธ ์—ฐ๊ฒฐ๋ง์ด๋‹ค. ํด๋ผ์ด์–ธํŠธ -> ์„œ๋ฒ„๋กœ ์š”์ฒญ์„ ๋ณด๋‚ด๊ณ , ์„œ๋ฒ„ -> ํด๋ผ์ด์–ธํŠธ ์‘๋‹ตํ•˜๋Š” ๊ตฌ์กฐ์ด๋‹ค. 2. URL Uniform Resource Locator์œผ๋กœ ๊ทœ๊ฒฉํ™”๋œ ๋ฆฌ์†Œ์Šค ๊ฒ€์ƒ‰์ž์ด๊ณ , ์›น์— ์กด์žฌํ•˜๋Š” ๋ฐ์ดํ„ฐ ์ค‘ ํŠน์ • ๋ฐ์ดํ„ฐ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฌธ์ž์—ด์ด๋‹ค. https:// + www.naver.com + /member/login + ?page=2 ํ˜•ํƒœ๋กœ..

[spring] ์Šคํ”„๋ง์œผ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ - ํŽ˜์ด์ง• ์ฒ˜๋ฆฌ, TIMESTAMP, ๊ทธ์™ธ ์˜ค๋ฅ˜ ์ˆ˜์ •

์Šคํ”„๋ง์œผ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ - ํŽ˜์ด์ง• ์ฒ˜๋ฆฌ, TIMESTAMP, ๊ทธ์™ธ ์˜ค๋ฅ˜ ์ˆ˜์ • ์Šคํ”„๋ง ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ •๋ฆฌํ•œ ๋‚ด์šฉ ์ž…๋‹ˆ๋‹ค ! ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š” :) 1. ํŽ˜์ด์ง• ์ฒ˜๋ฆฌ 2. TIMESTAMP 3. ๊ทธ์™ธ ์˜ค๋ฅ˜ ์ˆ˜์ • https://jcowwk.tistory.com/133 [spring] ์Šคํ”„๋ง์œผ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ - ๋Œ“๊ธ€ ์ž‘์„ฑ, ๋ชฉ๋ก ๊ธฐ๋Šฅ ์Šคํ”„๋ง์œผ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ - ๋Œ“๊ธ€ ์ž‘์„ฑ, ๋ชฉ๋ก ๊ธฐ๋Šฅ ์Šคํ”„๋ง ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ •๋ฆฌํ•œ ๋‚ด์šฉ ์ž…๋‹ˆ๋‹ค ! ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š” :) 1. ๋Œ“๊ธ€ ์ž‘์„ฑ 2. ๋Œ“๊ธ€ ๋ชฉ๋ก https://jcowwk.tistory.com/132 [develop] ์Šค jcowwk.tistory.com ๋ณธ ํฌ์ŠคํŒ…์€ ์œ„์˜ ํฌ์ŠคํŒ…๊ณผ ์ด์–ด์ง‘๋‹ˆ๋‹ค. 1. ํŽ˜์ด์ง• ์ฒ˜๋ฆฌ - ho..

[javascript] javascript ๊ธฐ๋ณธ ๊ฐœ๋…(feat. nodejs)

javascript ๊ธฐ๋ณธ ๊ฐœ๋…(feat. nodejs) ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ ์›น ๊ฐœ๋ฐœ ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ •๋ฆฌํ•œ ๋‚ด์šฉ ์ž…๋‹ˆ๋‹ค ! ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š” :) 1. VanilaJs, jQuery, Vue, React 2. Ajax, Fetch 3.nodejs 4. ๋ชจ๋“ˆ 5. ๋น„๋™๊ธฐ ํ”„๋กœ๊ทธ๋ž˜๋ฐ, promise 6. ์›น ์„œ๋ฒ„ ๋งŒ๋“ค๊ธฐ(http, express) 1. VanilaJs, jQuery, Vue, React - VanilaJs ํ”„๋ ˆ์ž„์›Œํฌ ๋˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์ ์šฉ๋˜์ง€ ์•Š์€ ๊ธฐ๋ณธ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์–ธ์–ด - jQuery ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ํ•จ์ˆ˜์˜ ์ด๋ฆ„์„ ์งง๊ฒŒ ๋ฐ”๊ฟ”์ฃผ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ - Vue ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ํ”„๋ ˆ์ž„์›Œํฌ์˜ ๊ธฐ๋Šฅ์„ ๋™์‹œ์— ๊ฐ€์ง„ ํ”„๋ ˆ์ž„์›Œํฌ - React ์ปดํฌ๋„ŒํŠธ ๊ธฐ๋ฐ˜์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ปดํฌ๋„ŒํŠธ๋Š” ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๊ธฐ ๋•Œ..

[spring] ์Šคํ”„๋ง์œผ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ - ๋Œ“๊ธ€ ์ž‘์„ฑ, ๋ชฉ๋ก ๊ธฐ๋Šฅ

์Šคํ”„๋ง์œผ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ - ๋Œ“๊ธ€ ์ž‘์„ฑ, ๋ชฉ๋ก ๊ธฐ๋Šฅ ์Šคํ”„๋ง ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ •๋ฆฌํ•œ ๋‚ด์šฉ ์ž…๋‹ˆ๋‹ค ! ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š” :) 1. ๋Œ“๊ธ€ ์ž‘์„ฑ 2. ๋Œ“๊ธ€ ๋ชฉ๋ก https://jcowwk.tistory.com/132 [develop] ์Šคํ”„๋ง์œผ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ - ๊ฒŒ์‹œ๋ฌผ ์กฐํšŒ, ์ˆ˜์ •, ์‚ญ์ œ ์Šคํ”„๋ง์œผ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ - ๊ฒŒ์‹œ๋ฌผ ์กฐํšŒ, ์ˆ˜์ •, ์‚ญ์ œ ์Šคํ”„๋ง ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ •๋ฆฌํ•œ ๋‚ด์šฉ ์ž…๋‹ˆ๋‹ค ! ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š” :) 1. ์กฐํšŒ (home.html, BoardController, detail.html, BoardService) 2. ์ˆ˜์ • jcowwk.tistory.com ๋ณธ ํฌ์ŠคํŒ…์€ ์œ„์˜ ํฌ์ŠคํŒ…๊ณผ ์ด์–ด์ง‘๋‹ˆ๋‹ค. 1. ๋Œ“๊ธ€ ์ž‘์„ฑ - detail.html ๊ธฐ์กด์— ๋งŒ๋“ค์–ด ๋†“์€..

[spring] ์Šคํ”„๋ง์œผ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ - ๊ฒŒ์‹œ๋ฌผ ์กฐํšŒ, ์ˆ˜์ •, ์‚ญ์ œ

์Šคํ”„๋ง์œผ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ - ๊ฒŒ์‹œ๋ฌผ ์กฐํšŒ, ์ˆ˜์ •, ์‚ญ์ œ ์Šคํ”„๋ง ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ •๋ฆฌํ•œ ๋‚ด์šฉ ์ž…๋‹ˆ๋‹ค ! ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š” :) 1. ์กฐํšŒ (home.html, BoardController, detail.html, BoardService) 2. ์ˆ˜์ • (BoardController, updateForm.html, BoardService) 3. ์‚ญ์ œ (BoardController, BoardService) https://jcowwk.tistory.com/131 [develop] ์Šคํ”„๋ง์œผ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ - ๋กœ๊ทธ์ธ ์ •๋ณด ์ €์žฅ(feat. ์„ธ์…˜) ์Šคํ”„๋ง์œผ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ - ๋กœ๊ทธ์ธ ์ •๋ณด ์ €์žฅ(feat. ์„ธ์…˜) ์Šคํ”„๋ง ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ •๋ฆฌํ•œ ๋‚ด์šฉ ์ž…๋‹ˆ๋‹ค ! ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ..

[spring] ์Šคํ”„๋ง์œผ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ - ๋กœ๊ทธ์ธ ์ •๋ณด ์ €์žฅ(feat. ์„ธ์…˜)

์Šคํ”„๋ง์œผ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ - ๋กœ๊ทธ์ธ ์ •๋ณด ์ €์žฅ(feat. ์„ธ์…˜) ์Šคํ”„๋ง ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ •๋ฆฌํ•œ ๋‚ด์šฉ ์ž…๋‹ˆ๋‹ค ! ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š” :) 1. ์„ธ์…˜ 2. Controller 3. Service https://jcowwk.tistory.com/130 [spring] ์Šคํ”„๋ง์œผ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ - ๊ฒŒ์‹œํŒ ๋ชฉ๋ก, ๊ธ€์“ฐ๊ธฐ ๊ธฐ๋Šฅ ์Šคํ”„๋ง์œผ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ - ๊ฒŒ์‹œํŒ ๋ชฉ๋ก, ๊ธ€์“ฐ๊ธฐ ๊ธฐ๋Šฅ ์Šคํ”„๋ง ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ •๋ฆฌํ•œ ๋‚ด์šฉ ์ž…๋‹ˆ๋‹ค ! ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š” :) 1. home.html, writtenForm.html 2. Controller 3. Service https://jcowwk.ti jcowwk.tistory.com ๋ณธ ํฌ์ŠคํŒ…์€ ์œ„์˜ ํฌ์ŠคํŒ…๊ณผ ์ด์–ด์ง‘๋‹ˆ๋‹ค. 1. ์„ธ์…˜ ์ผ๋ฐ˜์ ..

[spring] ์Šคํ”„๋ง์œผ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ - ๊ฒŒ์‹œํŒ ๋ชฉ๋ก, ๊ธ€์“ฐ๊ธฐ ๊ธฐ๋Šฅ

์Šคํ”„๋ง์œผ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ - ๊ฒŒ์‹œํŒ ๋ชฉ๋ก, ๊ธ€์“ฐ๊ธฐ ๊ธฐ๋Šฅ ์Šคํ”„๋ง ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ •๋ฆฌํ•œ ๋‚ด์šฉ ์ž…๋‹ˆ๋‹ค ! ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š” :) 1. home.html, writtenForm.html 2. Controller 3. Service https://jcowwk.tistory.com/125 [spring] ์Šคํ”„๋ง์œผ๋กœ ๋กœ๊ทธ์ธ ๋ฐ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๊ธฐ๋Šฅ ๋งŒ๋“ค๊ธฐ ์Šคํ”„๋ง์œผ๋กœ ๋กœ๊ทธ์ธ ๋ฐ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๊ธฐ๋Šฅ ๋งŒ๋“ค๊ธฐ ์Šคํ”„๋ง ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ •๋ฆฌํ•œ ๋‚ด์šฉ ์ž…๋‹ˆ๋‹ค ! ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š” :) 1. ๋“ค์–ด๊ฐ€๊ธฐ ์ „ 2. Controller 3. Service 4. joinForm.html https://jcowwk.tistory.co jcowwk.tistory.com ๋ณธ ํฌ์ŠคํŒ…์€ ์œ„์˜ ํฌ์ŠคํŒ…๊ณผ ์ด์–ด์ง€๊ณ , ๋ณธ ํฌ์ŠคํŒ…์—..

[์ž๋ฃŒ๊ตฌ์กฐ ์ด๋ก ] ํ•ด์‹œ, ์Šคํƒ, ํ ๊ฐœ๋…

ํ•ด์‹œ, ์Šคํƒ, ํ ๊ฐœ๋…์ž๋ฃŒ๊ตฌ์กฐ ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ •๋ฆฌํ•œ ๋‚ด์šฉ ์ž…๋‹ˆ๋‹ค !์˜ค๋ฅ˜๊ฐ€ ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š” :) 1. ํ•ด์‹œ2. ์Šคํƒ3. ํ1. ํ•ด์‹œkey-value๋กœ ์ด๋ฃจ์–ด์ง„ ์ž๋ฃŒ๊ตฌ์กฐ์ด๋‹ค.ํ•ด์‹œ๋Š” ๋‹จ๋ฐฉํ–ฅ์œผ๋กœ ๋™์ž‘ํ•˜์—ฌ ํ‚ค๋กœ ๊ฐ’์„ ์ฐพ์„ ์ˆ˜ ์žˆ์ง€๋งŒ, ๊ฐ’์œผ๋กœ ํ‚ค๋ฅผ ์ฐพ์„ ์ˆ˜๋Š” ์—†๋‹ค.ํ•ด์‹œ ํ•จ์ˆ˜๋Š” ๊ณ ์ •๋œ ๊ธธ์ด์˜ ๋ฐ์ดํ„ฐ๋กœ ๋งคํ•‘ํ•˜๋Š” ํ•จ์ˆ˜์ด๊ณ , ์ด ๊ณผ์ •์„ ํ•ด์‹ฑ์ด๋ผ๊ณ  ํ•œ๋‹ค. ์ „ํ™”๋ฒˆํ˜ธ๋ถ€๋ฅผ ์˜ˆ๋กœ ๋“ค ์ˆ˜ ์žˆ๋Š”๋ฐ key๊ฐ€ ์ด๋ฆ„, value๊ฐ€ ์ „ํ™”๋ฒˆํ˜ธ๋‹ค.์ด๋ฆ„์„ ํ•ด์‹œ ํ•จ์ˆ˜์— ๋„ฃ์–ด์„œ ํ•ด์‹ฑํ•˜๊ณ , ํ•ด์‹œ ํ…Œ์ด๋ธ”์— index(ํ•ด์‹œ ๋ฐ์ดํ„ฐ)์™€ value๋ฅผ ์ €์žฅํ•œ๋‹ค. ํ•ด์‹œ ํ•จ์ˆ˜์—์„œ ์ค‘์š”ํ•œ ๊ฒƒ์€ index๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด๋‹ค. 2. ์Šคํƒ๋‚˜์ค‘์— ๋“ค์–ด์˜จ๊ฒŒ ๋จผ์ € ๋‚˜๊ฐ€๋Š” ํ›„์ž…์„ ์ถœ(LIFO) ์ž๋ฃŒ๊ตฌ์กฐ์ด๋‹ค. 3. ํ๋จผ์ € ๋“ค์–ด์˜จ๊ฒŒ ๋จผ์ € ๋‚˜๊ฐ€๋Š” ์„ ์ž…์„ ์ถœ(FIFO) ์ž๋ฃŒ๊ตฌ์กฐ์ด๋‹ค.