๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
โœ๏ธ DevLog/Devcourse

[DevCourse] ์ƒ์„ฑํ˜• AI ํ™œ์šฉ ๋ฐฑ์—”๋“œ ๋ฐ๋ธŒ์ฝ”์Šค 42์ผ์ฐจ

by hyebin (Helia) 2025. 6. 10.
๋ฐ˜์‘ํ˜•

์˜ค๋Š˜์€ ์›น ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ํ•ต์‹ฌ ๊ฐœ๋…์„ ๋” ๊นŠ๊ฒŒ ๋ฐฐ์šฐ๋ฉด์„œ

Servlet์˜ ๊ธฐ๋Šฅ ์ˆ˜ํ–‰ ๊ณผ์ •, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๋™, ๊ทธ๋ฆฌ๊ณ  JSP์˜ ๊ธฐ๋ณธ ๊ตฌ์กฐ๊นŒ์ง€ ํญ๋„“๊ฒŒ ํ•™์Šตํ–ˆ๋‹ค.

ํŠนํžˆ JSP๋Š” ์ด๋ฆ„๋งŒ ๋“ค์–ด๋ดค๋˜ ๊ฐœ๋…์ด์—ˆ๋Š”๋ฐ, ์˜ค๋Š˜ ์ˆ˜์—…์„ ํ†ตํ•ด ์‹ค์ œ๋กœ ์–ด๋–ป๊ฒŒ ๋™์ž‘ํ•˜๋Š”์ง€ ์กฐ๊ธˆ์”ฉ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.

 


๐Ÿ“Œ ์˜ค๋Š˜ ๋ฐฐ์šด ๋‚ด์šฉ ์ •๋ฆฌ

๐Ÿ”ท Servlet ๊ธฐ๋Šฅ ์ˆ˜ํ–‰ ๊ณผ์ •

์„œ๋ธ”๋ฆฟ์ด ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ์„ ๋ฐ›์•„ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ณผ์ •์„ ๋‹ค์‹œ ์‚ดํŽด๋ดค๋‹ค.

์š”์ฒญ ํŒŒ๋ผ๋ฏธํ„ฐ๋Š” HttpServletRequest ๊ฐ์ฒด๋กœ ๋ฐ›๊ณ ,

์‘๋‹ต์€ HttpServletResponse ๊ฐ์ฒด๋กœ ์ฒ˜๋ฆฌํ•˜๋ฉฐ setContentType()์œผ๋กœ MIME ํƒ€์ž…์„ ์ง€์ •ํ•˜๊ณ  ์ž๋ฐ” I/O๋กœ ์ถœ๋ ฅํ•˜๋Š” ํ๋ฆ„์„ ์‹ค์Šตํ–ˆ๋‹ค.

๋˜ํ•œ GET ๋ฐฉ์‹๊ณผ POST ๋ฐฉ์‹์˜ ์ฐจ์ด๋ฅผ ๋‹ค์‹œ ๋ณต์Šตํ•˜๋ฉฐ,

ํผ ๋ฐ์ดํ„ฐ ์ „์†ก ์‹œ name, method, action, encType์˜ ์˜๋ฏธ๋„ ์ •๋ฆฌํ–ˆ๋‹ค.

 

๐Ÿ”ถ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๋™

JDBC๋ฅผ ์‚ฌ์šฉํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ๊ณผ CRUD ๊ธฐ๋ณธ ํ๋ฆ„์„ ํ•™์Šตํ–ˆ๋‹ค.

ํŠนํžˆ Connection Pool์˜ ํ•„์š”์„ฑ๊ณผ ๊ฐœ๋…์„ ๋ฐฐ์›Œ์„œ,

DB ์ปค๋„ฅ์…˜ ์žฌ์‚ฌ์šฉ์„ ํ†ตํ•ด ์„ฑ๋Šฅ์„ ๋†’์ผ ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์ด ํฅ๋ฏธ๋กœ์› ๋‹ค.

 

๐Ÿ”ธ JSP์˜ ๊ธฐ๋ณธ ์ดํ•ด

JSP๊ฐ€ Servlet๋ณด๋‹ค HTML ์ค‘์‹ฌ์œผ๋กœ ํ™”๋ฉด์„ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์–ด ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ์‰ฝ๋‹ค๋Š” ์žฅ์ ์„ ์•Œ๊ฒŒ ๋๋‹ค.

JSP์˜ ๋™์ž‘ ๊ณผ์ •(๋ณ€ํ™˜ → ์ปดํŒŒ์ผ → ์‹คํ–‰)๋„ ๋‹จ๊ณ„๋ณ„๋กœ ๋ฐฐ์›Œ๋ณด๋ฉฐ,

๋””๋ ‰ํ‹ฐ๋ธŒ, ์Šคํฌ๋ฆฝํŠธ ์š”์†Œ, ๋‚ด์žฅ ๊ฐ์ฒด ๋“ฑ JSP ํŽ˜์ด์ง€ ๊ตฌ์„ฑ์š”์†Œ๋“ค์„ ์ •๋ฆฌํ–ˆ๋‹ค.

๋˜ํ•œ MVC(Model2) ํŒจํ„ด์ด ํšจ์œจ์ ์ธ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์— ์ ํ•ฉํ•˜๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ฒŒ ๋˜์—ˆ๋‹ค.


๐Ÿงก ๋А๋‚€ ์ 

์˜ค๋Š˜์€ ์›น ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ํฐ ๊ทธ๋ฆผ์„ ์ข€ ๋” ๋ช…ํ™•ํ•˜๊ฒŒ ๊ทธ๋ ค๋ณผ ์ˆ˜ ์žˆ๋Š” ํ•˜๋ฃจ์˜€๋‹ค.

Servlet์˜ ์š”์ฒญ/์‘๋‹ต ์ฒ˜๋ฆฌ ๊ณผ์ •์„ ๋‹ค์‹œ ์ •๋ฆฌํ•˜๋ฉด์„œ,

HTTP ์š”์ฒญ์ด ์–ด๋–ป๊ฒŒ ์„œ๋ฒ„์—์„œ ์ฒ˜๋ฆฌ๋˜๊ณ  ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์‘๋‹ต์ด ๋Œ์•„๊ฐ€๋Š”์ง€๋ฅผ ์กฐ๊ธˆ ๋” ํ™•์‹คํ•˜๊ฒŒ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.

 

ํŠนํžˆ JSP ๋ถ€๋ถ„์€ ์ฒ˜์Œ ๋ฐฐ์›Œ๋ณด๋Š” ๊ฐœ๋…์ด๋ผ ๋‚ฏ์„ค์—ˆ์ง€๋งŒ, JSP๊ฐ€ ํ™”๋ฉด์„ ๋™์ ์œผ๋กœ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐ ํŠนํ™”๋˜์–ด ์žˆ๋‹ค๋Š” ์ ์ด ์‹ ๊ธฐํ–ˆ๋‹ค.

MVC ํŒจํ„ด๊นŒ์ง€ ๋ฐฐ์šฐ๋ฉด์„œ ์›น ๊ฐœ๋ฐœ์˜ ๊ตฌ์กฐ์™€ ํ๋ฆ„์„ ํ•œ์ธต ๋” ์ฒด๊ณ„์ ์œผ๋กœ ๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ๋œ ๊ฒƒ ๊ฐ™์•˜๋‹ค.

 

์•„์ง ์™„์ „ํžˆ ์ดํ•ด๋˜์ง€๋Š” ์•Š์•˜์ง€๋งŒ, ์˜ค๋Š˜์ฒ˜๋Ÿผ Servlet๊ณผ JSP๋ฅผ ํ•จ๊ป˜ ๋ฐฐ์šฐ๋ฉด์„œ ์กฐ๊ธˆ์”ฉ ๊ตฌ์กฐ๋ฅผ ์ดํ•ดํ•ด ๋‚˜๊ฐ€๋‹ˆ๊นŒ

์•ž์œผ๋กœ ๋” ๋ณต์žกํ•œ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค ๋•Œ๋„ ์ž์‹ ๊ฐ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.

ํ•˜๋‚˜ํ•˜๋‚˜ ๋ฐฐ์šฐ๋ฉด์„œ ์‹ค์Šตํ•ด ๋ณด๋‹ˆ ์›น ๊ฐœ๋ฐœ์ด ์กฐ๊ธˆ์”ฉ ์žฌ๋ฏธ์žˆ์–ด์ง€๊ณ  ์žˆ๋‹ค.

๋ฐ˜์‘ํ˜•