1. Servlet

2. JSP

1. Servlet

1-1) Servlet

Container๊ฐ€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๊ฒŒ ๊ตฌ์„ฑ๋œ ์ˆœ์ˆ˜ ์ž๋ฐ”์ฝ”๋“œ๋กœ๋งŒ ์ด๋ฃจ์–ด์ง.

Servlet์€ ์ผ๋ฐ˜ ์ž๋ฐ” ํ”„๋กœ๊ทธ๋žจ๊ณผ ๋‹ค๋ฅด๊ฒŒ ๋…์ž์ ์œผ๋กœ ์‹คํ–‰๋˜์ง€ ๋ชปํ•จ.

Tomcat๊ณผ ๊ฐ™์€ JSP/Servlet ์ปจํ…Œ์ด๋„ˆ์—์„œ ์‹คํ–‰๋œ๋‹ค๋Š” ์ ์—์„œ ์ฐจ์ด๊ฐ€ ์žˆ์Œ.

์„œ๋ธ”๋ฆฟ์€ ์„œ๋ฒ„์—์„œ ์‹คํ–‰๋˜๋‹ค ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ์š”์ฒญ์„ ํ•˜๋ฉด

ํ•ด๋‹น ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•œ ํ›„ ์›น ๋ธŒ๋ผ์šฐ์ €์— ๊ฒฐ๊ณผ๋ฅผ ์ „์†กํ•จ.

์„œ๋ฒ„์—์„œ ์‹คํ–‰๋˜๋ฏ€๋กœ ๊ด€๋ จ๋œ ๊ธฐ๋Šฅ๋„ ์•ˆ์ „ํ•˜๊ฒŒ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Œ.

1-2) Servlet์˜ ๋™์ž‘ ๊ณผ์ •

โ†’ ํด๋ผ์ด์–ธํŠธ๊ฐ€ Web Server์— ์š”์ฒญ

โ†’ ์›น ์„œ๋ฒ„๋Š” ๊ทธ ์š”์ฒญ์„ ํ†ฐ์บฃ๊ณผ WAS์—๊ฒŒ ์œ„์ž„.

โ†’ WAS๋Š” ๊ฐ ์š”์ฒญ์— ํ•ด๋‹นํ•˜๋Š” Servlet์„ ์‹คํ–‰ํ•จ.

โ†’ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•˜์—ฌ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์ „์†กํ•จ.

โ‡’ ๋”ฐ๋ผ์„œ ๊ทธ๋Ÿฐ ๊ธฐ๋Šฅ์„ ์„œ๋ฒ„ ์ชฝ์—์„œ ์„œ๋ธ”๋ฆฟ์ด ์ฒ˜๋ฆฌํ•ด ์ฃผ๋ฉด ์ƒํ’ˆ ํ• ์ธ ๊ฐ€๊ฒฉ ํ‘œ์‹œ์ฒ˜๋Ÿผ

โ‡’ ์›น ํŽ˜์ด์ง€์—์„œ ๋™์ ์œผ๋กœ ๋ณ€ํ•˜๋Š” ์ •๋ณด๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ์Œ.

1-3) Servlet์˜ ํŠน์ง•

โ†’ ์„œ๋ฒ„ ์ชฝ์—์„œ ์‹คํ–‰๋˜๋ฉด์„œ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•จ.

โ†’ ๊ธฐ์กด์˜ ์ •์ ์ธ ์›น ํ”„๋กœ๊ทธ๋žจ์˜ ๋ฌธ์ œ์ ์„ ๋ณด์™„ํ•˜์—ฌ ๋™์ ์ด ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•จ.

โ†’ Thread(Click) ๋ฐฉ์‹์œผ๋กœ ์‹คํ–‰๋จ.

โ†’ ์ž๋ฐ”๋กœ ๋งŒ๋“ค์–ด์ ธ ์ž๋ฐ”์˜ ํŠน์ง•(๊ฐ์ฒด์ง€ํ–ฅ)์„ ๊ฐ€์ง.

โ†’ ์ปจํ…Œ์ด๋„ˆ ์ข…๋ฅ˜์— ์ƒ๊ด€์—†์ด ์‹คํ–‰๋จ.(ํ”Œ๋žซํผ ๋…๋ฆฝ์ )

โ†’ ๋ณด์•ˆ ๊ธฐ๋Šฅ์„ ์ ์šฉํ•˜๊ธฐ ์‰ฌ์›€.

โ†’ ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ์š”์ฒญ ์‹œ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•จ.

2. JSP

2-1) JSP

โ†’ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง๊ณผ ํ™”๋ฉด ๊ธฐ๋Šฅ์ด ๊ฐ™์•„ ๊ฐœ๋ฐœ ํ›„ ์œ ์ง€๊ด€๋ฆฌ๊ฐ€ ์–ด๋ ค์›€.

โ†’ ํ”„๋กœ์„ธ์Šค ๋ฐฉ์‹์ด ์•„๋‹ˆ๋ผ ์Šค๋ ˆ๋“œ ๋ฐฉ์‹์ž„.

2-2) JSP์˜ ๋ฌธ์ œ์ 

โ†’ ์›น ํ”„๋กœ๊ทธ๋žจ์˜ ํ™”๋ฉด ๊ธฐ๋Šฅ์ด ๋ณต์žกํ•ด์ง€๋ฏ€๋กœ ์„œ๋ธ”๋ฆฟ์˜ ์ž๋ฐ” ๊ธฐ๋ฐ˜์œผ๋กœ ํ™”๋ฉด ๊ธฐ๋Šฅ ๊ตฌํ˜„ ์‹œ ์–ด๋ ค์›€ ๋ฐœ์ƒ.

โ†’ ๋””์ž์ด๋„ˆ ์ž…์žฅ์—์„œ ํ™”๋ฉด ๊ตฌํ˜„ ์‹œ ์ž๋ฐ” ์ฝ”๋“œ๋กœ ์ธํ•ด ์ž‘์—…์ด ์–ด๋ ค์›€.

โ†’ ์„œ๋ธ”๋ฆฟ์— ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง๊ณผ ํ™”๋ฉด ๊ธฐ๋Šฅ์ด ๊ฐ™์ด ์žˆ๋‹ค๋ณด๋‹ˆ ๊ฐœ๋ฐœ ํ›„ ์œ ์ง€๊ด€๋ฆฌ๊ฐ€ ์–ด๋ ค์›€.

2-3) ํ•ด๊ฒฐ์ฑ…

โ†’ ์„œ๋ธ”๋ฆฟ์˜ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง๊ณผ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ํ™”๋ฉด ๊ธฐ๋Šฅ์„ ๋ถ„๋ฆฌํ•˜์ž

โ†’ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง๊ณผ ํ™”๋ฉด์„ ๋ถ„๋ฆฌํ•จ์œผ๋กœ์จ ๊ฐœ๋ฐœ์ž๋Š” ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ๊ตฌํ˜„์— ์ง‘์ค‘ํ•˜๊ณ ,

โ†’ ๋””์ž์ด๋„ˆ๋Š” ํ™”๋ฉด ๊ธฐ๋Šฅ ๊ตฌํ˜„์—๋งŒ ์ง‘์ค‘ํ•˜์ž !!!

โ†’ ๊ฐœ๋ฐœ ํ›„ ์žฌ์‚ฌ์šฉ์„ฑ๊ณผ ์œ ์ง€๊ด€๋ฆฌ๊ฐ€ ํ›จ์”ฌ ์ˆ˜์›”ํ•ด์ง !!!

2-4) JSP ๋™์ž‘ ๋ฐฉ์‹

โ†’ ํ”„๋กœ์„ธ์Šค ๋ฐฉ์‹์ด ์•„๋‹Œ ์Šค๋ ˆ๋“œ ๋ฐฉ์‹์œผ๋กœ ์‹คํ–‰ํ•จ.

โ†’ ํด๋ผ์ด์–ธํŠธ์˜ ์š”๊ตฌ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ธฐ๋Šฅ์€ ์ตœ์ดˆ ํ•œ ๋ฒˆ๋งŒ ๋ฉ”๋ชจ๋ฆฌ์— ๋กœ๋“œ๋จ.

โ†’ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋™์ผํ•œ ๊ธฐ๋Šฅ์„ ์š”๊ตฌํ•˜๋ฉด ๊ธฐ์กด์— ์‚ฌ์šฉํ•œ ๊ธฐ๋Šฅ์„ ์žฌ์‚ฌ์šฉํ•จ.

2-5) JSP์˜ ํŠน์ง•

โ†’ JSP๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์Šค๋ ˆ๋“œ(Thread) ๋ฐฉ์‹์œผ๋กœ ์‹คํ–‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์—

โ†’ CGI ๋ฐฉ์‹๋ณด๋‹ค๋Š” ํšจ์œจ์ ์œผ๋กœ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

โ†’ ์‹ค์ œ๋กœ ํ”„๋กœ๊ทธ๋žจ์˜ ์ˆ˜ํ–‰์†๋„๋ฅผ ๋–จ์–ด๋œจ๋ฆฌ๋Š” ์š”์ธ ์ค‘ ํ•˜๋‚˜๊ฐ€ ํ”„๋กœ๊ทธ๋žจ์„

โ†’ ์™ธ๋ถ€ ์žฅ์น˜์—์„œ ๋ฉ”๋ชจ๋ฆฌ๋กœ ๋กœ๋“œํ•˜๋Š” ๊ฒƒ์ธ๋ฐ

โ†’ ์Šค๋ ˆ๋“œ๋กœ ์ˆ˜ํ–‰ํ•˜๋ฉด ์ด ๊ณผ์ •์„ ๊ฑฐ์น˜์ง€ ์•Š์•„๋„ ๋˜๋‹ˆ ๊ธฐ์กด CGI ํ”„๋กœ๊ทธ๋žจ๋ณด๋‹ค ํ›จ์”ฌ ๋น ๋ฅด๊ฒŒ ๋™์ž‘ํ•˜๊ฒŒ ๋จ.

โ†’ ์š”์ฆ˜์ฒ˜๋Ÿผ ๋‹ค์ˆ˜์˜ ์‚ฌ์šฉ์ž๊ฐ€ ์ ‘์†ํ•ด์„œ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•˜๋Š” ํ™˜๊ฒฝ์—์„œ๋Š”

โ†’ JSP, ASP, PHP์™€ ๊ฐ™์ด ์Šค๋ ˆ๋“œ ๋ฐฉ์‹์œผ๋กœ ๋™์ž‘ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์ด ์œ ๋ฆฌํ•ฉ๋‹ˆ๋‹ค.