Cookie Session Servlet Life Cycle feat.JSP Life Cycle - accidentlywoo/secsec GitHub Wiki

Cookie์™€ Session Servlet Life Cycle feat.JSP Life Cycle

Cookie

Cookie ํด๋ž˜์Šค๋Š” javax.servlet.http ํŒจํ‚ค์ง€์— ์†ํ•˜๋ฉฐ, ์ด ํด๋ž˜์Šค์˜ ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ค ๋•Œ๋Š” ์ฟ ํ‚ค์˜ ์ด๋ฆ„๊ณผ ๊ฐ’์„ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ๋„˜๊ฒจ์ค˜์•ผ ํ•œ๋‹ค.

์›น ๋ธŒ๋ผ์šฐ์ €๋Š” ์›น ์„œ๋ฒ„๊ฐ€ ์•„๋ฌด๋Ÿฐ ์š”์ฒญ์„ ํ•˜์ง€ ์•Š์•„๋„ ์›น ์„œ๋ฒ„๋กœ URL์„ ๋ณด๋‚ผ ๋•Œ ๋งˆ๋‹ค ๊ทธ URL์— ํฌํ•จ๋œ ์›น ์„œ๋ฒ„์˜ ์ฃผ์†Œ์— ํ•ด๋‹นํ•˜๋Š” ๋ชจ๋“  ์ฟ ํ‚ค๋ฅผ ์ฐพ์•„์„œ ์›น ์„œ๋ฒ„๋กœ ํ•จ๊ป˜ ๋ณด๋‚ธ๋‹ค.

Cookie์ด์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•

  1. HTML์œ ์ง€ํ•˜๋Š” ๋ฐฉ๋ฒ• -> JavaScript Cookie(BOM)
  2. JavaScript Library
  3. Servlet

์ฟ ํ‚ค๋Š” ๋ฌธ์ž์—ด๋งŒ ์ €์žฅ๊ฐ€๋Šฅ

์„ธ์…˜์€ ๋ชจ๋“  ๋ฐ์ดํ„ฐํƒ€์ž… ์ €์žฅ๊ฐ€๋Šฅ

Session

HttpSession session = request.getSession();

session.setInactiveInterval(10);

session.invalidate();

session.removeAttribute("loginInfo");

Servlet Life Cycle

์„œ๋ธ”๋ฆฟ ํด๋ž˜์Šค๋Š” ์›น ๋ธŒ๋ผ์šฐ์ €์— ์˜ํ•ด ๋ฐ”๋กœ ํ˜ธ์ถœ๋˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์„œ๋ธ”๋ฆฟ ํด๋ž˜์Šค๋กœ ๋ถ€ํ„ฐ ์„œ๋ธ”๋ฆฟ ๊ฐ์ฒด๊ฐ€ ๋งŒ๋“ค์–ด์ง€๊ณ , ๊ทธ ๊ฐ์ฒด๊ฐ€ ์›น ์ปจํ…Œ์ด๋„ˆ์— ์˜ํ•ด ์ดˆ๊ธฐํ™”๋œ ๋‹ค์Œ์— ํ˜ธ์ถœ๋œ๋‹ค.

์›น ๋ธŒ๋ผ์šฐ์ €์˜ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์ƒํƒœ์˜ ์„œ๋ธ”๋ฆฟ ๊ฐ์ฒด๋ฅผ ์„œ๋ธ”๋ฆฟ์ด๋ผ๊ณ  ํ•œ๋‹ค. -> init() ๋ฉ”์†Œ๋“œ ํ˜ธ์ถœ๋œ ์ดํ›„์˜ ์„œ๋ธ”๋ฆฟ ๊ฐ์ฒด

  1. ์„œ๋ธ”๋ฆฟ ํด๋ž˜์Šค ๋กœ๋“œ
  2. ์„œ๋ธ”๋ฆฟ ํด๋ž˜์Šค ์ธ์Šคํ„ด์Šค ํ™”
  3. ์„œ๋ธ”๋ฆฟ ๊ฐ์ฒด ์ดˆ๊ธฐํ™” ์ž‘์—… init()ํ˜ธ์ถœ
  4. ์„œ๋ธ”๋ฆฟ service() ๋ฉ”์†Œ๋“œ ํ˜ธ์ถœ
  5. Http ๋ฉ”์†Œ๋“œ ๋ณ„๋กœ doGet(), doPost()๋ฅผ ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ๋‹ค.
  6. destory() ํ˜ธ์ถœ ์‹œ์  -> WAS shutdown or Class reload

JSP Life Cycle

  1. a.jsp ์š”์ฒญ [ํด๋ผ์ด์–ธํŠธ]
  2. a_jsp.java ํŒŒ์ผ ์ฐพ๊ธฐ [WAS]
    1. No)
  1. a_jsp.javaํŒŒ์ผ Generated
  2. Compile --> a_jsp.class
  3. ๊ฐ์ฑ„ ์ƒ์„ฑ
  4. ์ƒ์„ฑ์ž ํ˜ธ์ถœ
  5. jspInit() ์ž๋™ ํ˜ธ์ถœ [WAS๊ฐ€ ํ˜ธ์ถœ Inversion of Controll : servlet์—์„œ๋Š” init()]
  6. _jspService() ์ž๋™ํ˜ธ์ถœ