JinSeong 2021. 10. 8. 18:42

์ฟ ํ‚ค : httpํ†ต์‹ ์€ ์ƒํƒœ์—†์Œ : ๊ผผ์ˆ˜๋กœ ์ƒํƒœ ํ•„์š”ํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š”๊ฒŒ ์ฟ ํ‚ค

์ฟ ํ‚ค ์šฉ๋„ : ID๊ธฐ์–ตํ•˜๊ธฐ, ์ผ์ฃผ์ผ๋™์•ˆ ๊ณต์ง€ ์•ˆ๋ณด๊ธฐ

๋ธŒ๋ผ์šฐ์ € ->(์ฟ ํ‚ค) ->>> ์„œ๋ฒ„

์ฟ ํ‚ค๋กœ ํ•˜๋ฉด id,pw ์œ„ํ—˜ํ•ด์„œ ๋กœ๊ทธ์ธ๊ธฐ๋Šฅ์€ ์„ธ์…˜(์„œ๋ฒ„์—๋งŒ์กด์žฌ)์œผ๋กœ

CookieUtils
Cookie ๊ฒฝ๋กœ์„ค์ •, maxAge์„ค์ •์€ ์ฟ ํ‚ค๋งŒ๋“ค๊ณ  ๋‚˜์„œ set, set, setsetset
์• ์ดˆ์— ๋งŒ๋“ค๋•Œ๋งˆ๋‹ค ๊ฒฝ๋กœ, age ๋‹ค ์„ค์ •ํ•˜๊ณ ์‹ถ๋‹ค. ํŽธํ•˜๊ฒŒ ๋งŒ๋“ค์–ด ๋ณด์ž ! -> Utils

 

 

์ฟ ํ‚ค ์‚ฌ์šฉํ•˜๊ธฐ
๏ถ ์ฟ ํ‚ค(cookie)๋Š” ์›น ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋ณด๊ด€ํ•˜๊ณ  ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋กœ์„œ ์›น ์„œ๋ฒ„์— ์š”์ฒญ์„ ๋ณด๋‚ผ ๋•Œ
ํ•จ๊ป˜ ์ „์†ก๋œ๋‹ค.
๏ถ ์ฟ ํ‚ค๋Š” ์›น ์„œ๋ฒ„์™€ ์›น ๋ธŒ๋ผ์šฐ์ € ์–‘์ชฝ์—์„œ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์›น ์„œ๋ฒ„๋Š” ์›น ๋ธŒ๋ผ์šฐ์ €๊ฐ€
์ „์†กํ•œ ์ฟ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ์–ด์˜ฌ ์ˆ˜ ์žˆ๋‹ค.
๏ถ ์›น ์„œ๋ฒ„์™€ ์›น ๋ธŒ๋ผ์šฐ์ €๋Š” ์ฟ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์„œ๋กœ ํ•„์š”ํ•œ ๊ฐ’์„ ๊ณต์œ ํ•˜๊ฒŒ ๋˜๋ฉฐ ์ƒํƒœ๋ฅผ
์œ ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ฟ ํ‚ค ๋™์ž‘ ๋ฐฉ์‹
1.์ฟ ํ‚ค์ƒ์„ฑ
2.์ฟ ํ‚ค์ €์žฅ
3.์ฟ ํ‚ค์ „์†ก

์ฟ ํ‚ค ์‚ฌ์šฉํ•˜๊ธฐ-์ฟ ํ‚ค ๋™์ž‘ ๋ฐฉ์‹
๏ถ ์ฟ ํ‚ค ์ƒ์„ฑ ๋‹จ๊ณ„
๏‚ง
์ฟ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋จผ์ € ์ฟ ํ‚ค๋ฅผ ์ƒ์„ฑํ•ด์•ผ ํ•œ๋‹ค. JSP ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ ์ฟ ํ‚ค๋Š” ์ฃผ๋กœ ์›น
์„œ๋ฒ„ ์ธก์—์„œ ์ƒ์„ฑํ•œ๋‹ค. ์ƒ์„ฑ๋œ ์ฟ ํ‚ค๋Š” ์‘๋‹ต ๋ฐ์ดํ„ฐ์— ํ•จ๊ป˜ ์ €์žฅ๋˜์–ด ์ „์†ก๋œ๋‹ค.
๏ถ ์ฟ ํ‚ค ์ €์žฅ ๋‹จ๊ณ„
๏‚ง
์›น ๋ธŒ๋ผ์šฐ์ €๋Š” ์‘๋‹ต ๋ฐ์ดํ„ฐ์— ํฌํ•จ๋œ ์ฟ ํ‚ค๋ฅผ ์ฟ ํ‚ค ์ €์žฅ์†Œ์— ๋ณด๊ด€ํ•œ๋‹ค. ์ฟ ํ‚ค์˜ ์ข…๋ฅ˜์— ๋”ฐ๋ผ
๋ฉ”๋ชจ๋ฆฌ๋‚˜ ํŒŒ์ผ๋กœ ์ €์žฅ๋œ๋‹ค.
๏ถ ์ฟ ํ‚ค ์ „์†ก ๋‹จ๊ณ„
๏‚ง
์›น ๋ธŒ๋ผ์šฐ์ €๋Š” ํ•œ๋ฒˆ ์ €์žฅ๋œ ์ฟ ํ‚ค๋ฅผ ๋งค๋ฒˆ ์š”์ฒญ์ด ์žˆ์„ ๋•Œ๋งˆ๋‹ค ์›น ์„œ๋ฒ„์— ์ „์†กํ•œ๋‹ค. ์›น ์„œ๋ฒ„๋Š”
์›น ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ „์†กํ•œ ์ฟ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•ด์„œ ํ•„์š”ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.
๏‚ง
* ์›น ๋ธŒ๋ผ์šฐ์ €์— ์ฟ ํ‚ค๊ฐ€ ์ €์žฅ๋˜๋ฉด, ์›น ๋ธŒ๋ผ์šฐ์ €๋Š” ์ฟ ํ‚ค๊ฐ€ ์‚ญ์ œ๋˜๊ธฐ ์ „๊นŒ์ง€ ์›น ์„œ๋ฒ„์— ์ฟ ํ‚ค
๋ฅผ ์ „์†กํ•œ๋‹ค. ์ง€์†์ ์œผ๋กœ ์œ ์ง€ํ•ด์•ผ ํ•˜๋Š” ์ •๋ณด๋Š” ์ฟ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

์ฟ ํ‚ค์˜ ๊ตฌ์„ฑ
๏ถ ์ฟ ํ‚ค์˜ ๊ตฌ์„ฑ
ํ•ญ๋ชฉ          ์„ค๋ช…
์ด๋ฆ„ ๊ฐ๊ฐ์˜ ์ฟ ํ‚ค๋ฅผ ๊ตฌ๋ณ„ํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์ด๋ฆ„
๊ฐ’   ์ฟ ํ‚ค์˜ ์ด๋ฆ„๊ณผ ๊ด€๋ จ๋œ ๊ฐ’
์œ ํšจ์‹œ๊ฐ„ ์ฟ ํ‚ค์˜ ์œ ์ง€ ์‹œ๊ฐ„
๋„๋ฉ”์ธ ์ฟ ํ‚ค๋ฅผ ์ „์†กํ•  ๋„๋ฉ”์ธ
๊ฒฝ๋กœ ์ฟ ํ‚ค๋ฅผ ์ „์†กํ•  ์š”์ฒญ ๊ฒฝ๋กœ


๏ถ ์ฟ ํ‚ค์˜ ๋„ค์ž„ ๊ทœ์•ฝ
๏‚ง ์ฟ ํ‚ค์˜ ์ด๋ฆ„์€ ์•„์Šคํ‚ค ์ฝ”๋“œ์˜ ์•ŒํŒŒ๋ฒณ๊ณผ ์ˆซ์ž๋งŒ์„ ํฌํ•จํ•  ์ˆ˜ ์žˆ๋‹ค.
๏‚ง ์ฝค๋งˆ(,), ์„ธ๋ฏธ์ฝœ๋ก (;), ๊ณต๋ฐฑ(โ€˜ โ€˜) ๋“ฑ์˜ ๋ฌธ์ž๋Š” ํฌํ•จํ•  ์ˆ˜ ์—†๋‹ค.
๏‚ง โ€˜$โ€™๋กœ ์‹œ์ž‘ํ•  ์ˆ˜ ์—†๋‹ค.





๏ถ Cookie ํด๋ž˜์Šค์˜ ์ฃผ์š” ๋ฉ”์„œ๋“œ
๋ฉ”์„œ๋“œ
๋ฆฌํ„ด ํƒ€์ž…
์„ค
๋ช…
getName() String ์ฟ ํ‚ค์˜ ์ด๋ฆ„์„ ๊ตฌํ•œ๋‹ค.
getValue() String ์ฟ ํ‚ค์˜ ๊ฐ’์„ ๊ตฌํ•œ๋‹ค.
setValue(String value) void ์ฟ ํ‚ค์˜ ๊ฐ’์„ ์ง€์ •ํ•œ๋‹ค.
setDomain(String pattern) void ์ด ์ฟ ํ‚ค๊ฐ€ ์ „์†ก๋  ์„œ๋ฒ„์˜ ๋„๋ฉ”์ธ์„ ์ง€์ •ํ•œ๋‹ค.
getDomain() String ์ฟ ํ‚ค์˜ ๋„๋ฉ”์ธ์„ ๊ตฌํ•œ๋‹ค.
setPath(String url) void ์ฟ ํ‚ค๋ฅผ ์ „์†กํ•  ๊ฒฝ๋กœ๋ฅผ ์ง€์ •ํ•œ๋‹ค.
getPath() String ์ฟ ํ‚ค์˜ ์ „์†ก ๊ฒฝ๋กœ๋ฅผ ๊ตฌํ•œ๋‹ค.
setMaxAge(int expire) void ์ฟ ํ‚ค์˜ ์œ ํšจ์‹œ๊ฐ„์„ ์ดˆ ๋‹จ์œ„๋กœ ์ง€์ •ํ•œ๋‹ค. ์Œ์ˆ˜๋ฅผ ์ž…
๋ ฅํ•  ๊ฒฝ์šฐ ์›น ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๋‹ซ์„ ๋•Œ ์ฟ ํ‚ค๊ฐ€ ํ•จ๊ป˜ ์‚ญ
์ œ๋œ๋‹ค.
getMaxAge() int ์ฟ ํ‚ค์˜ ์œ ํšจ ์‹œ๊ฐ„์„ ๊ตฌํ•œ๋‹ค.


์ฟ ํ‚ค ๊ฐ’ ์ฝ์–ด์˜ค๊ธฐ
๏ถ ์›น ๋ธŒ๋ผ์šฐ์ €๋Š” ์š”์ฒญ ํ—ค๋”์— ์ฟ ํ‚ค๋ฅผ ์ €์žฅํ•ด์„œ ๋ณด๋‚ด๋ฉฐ, request.getCookies() ๋ฉ”์„œ๋“œ๋ฅผ
ํ†ตํ•ด ์ฝ์–ด์˜ฌ ์ˆ˜ ์žˆ๋‹ค.