์ „์ฒด ๊ธ€ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ
350 ๊ฐœ์˜ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

Servlet | Request, Response ๊ฐ์ฒด ์ดํ•ดํ•˜๊ธฐ

์š”์ฒญ๊ณผ ์‘๋‹ต WAS๋Š” ์›น ๋ธŒ๋ผ์šฐ์ €๋กœ๋ถ€ํ„ฐ Servlet์š”์ฒญ์„ ๋ฐ›์œผ๋ฉด, ์š”์ฒญํ•  ๋•Œ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์ •๋ณด๋ฅผ HttpServletRequest๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ์›น ๋ธŒ๋ผ์šฐ์ €์—๊ฒŒ ์‘๋‹ต์„ ๋ณด๋‚ผ ๋•Œ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•˜์—ฌ HttpServletResponse๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ƒ์„ฑ๋œ HttpServletRequest, HttpServletResponse ๊ฐ์ฒด๋ฅผ ์„œ๋ธ”๋ฆฟ์—๊ฒŒ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค. HttpServletRequest httpํ”„๋กœํ† ์ฝœ์˜ request์ •๋ณด๋ฅผ ์„œ๋ธ”๋ฆฟ์—๊ฒŒ ์ „๋‹ฌํ•˜๊ธฐ ์œ„ํ•œ ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ํ—ค๋”์ •๋ณด, ํŒŒ๋ผ๋ฏธํ„ฐ, ์ฟ ํ‚ค, URI, URL ๋“ฑ์˜ ์ •๋ณด๋ฅผ ์ฝ์–ด ๋“ค์ด๋Š” ๋ฉ”์†Œ๋“œ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. Body์˜ Stream์„ ์ฝ์–ด ๋“ค์ด๋Š” ๋ฉ”์†Œ๋“œ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. HttpServletResponse WAS๋Š” ์–ด๋–ค ํด๋ผ์ด์–ธํŠธ๊ฐ€ ..

Servlet | Servlet Lifecycle ๋™์ ์›น ๋™์ž‘๋ฐฉ์‹

์„œ๋ธ”๋ฆฟ ๋ผ์ดํ”„์‚ฌ์ดํด LifecycleServlet HttpServlet์˜ 3๊ฐ€์ง€ ๋ฉ”์†Œ๋“œ๋ฅผ ์˜ค๋ฒ„๋ผ์ด๋”ฉ init() service(request, response) destroy() Servlet ์ƒ๋ช…์ฃผ๊ธฐ WAS๋Š” ์„œ๋ธ”๋ฆฟ ์š”์ฒญ์„ ๋ฐ›์œผ๋ฉด ํ•ด๋‹น ์„œ๋ธ”๋ฆฟ์ด ๋ฉ”๋ชจ๋ฆฌ์— ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. if (๋ฉ”๋ชจ๋ฆฌ์— ์—†์Œ) { - ํ•ด๋‹น ์„œ๋ธ”๋ฆฟ ํด๋ž˜์Šค๋ฅผ ๋ฉ”๋ชจ๋ฆฌ์— ์˜ฌ๋ฆผ - init() ๋ฉ”์†Œ๋“œ๋ฅผ ์‹คํ–‰ } - service()๋ฉ”์†Œ๋“œ๋ฅผ ์‹คํ–‰ was๊ฐ€ ์ข…๋ฃŒ๋˜๊ฑฐ๋‚˜, ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ƒˆ๋กญ๊ฒŒ ๊ฐฑ์‹ ๋  ๊ฒฝ์šฐ destroy() ๋ฉ”์†Œ๋“œ๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. -do get ๋งŒ์œผ๋กœ๋„ service๊ฐ€ ์‹คํ–‰๋œ ์ด์œ  service(request, response) ๋ฉ”์†Œ๋“œ HttpServlet์˜ service๋ฉ”์†Œ๋“œ๋Š” ํ…œํ”Œ๋ฆฟ ๋ฉ”์†Œ๋“œ ํŒจํ„ด์œผ๋กœ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ์˜ ์š”์ฒญ..

Servlet | JAVA Web Application Servlet

์ž๋ฐ” ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜(Java Web Application) WAS์— ์„ค์น˜(deploy)๋˜์–ด ๋™์ž‘ํ•˜๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ž…๋‹ˆ๋‹ค. ์ž๋ฐ” ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—๋Š” HTML, CSS, ์ด๋ฏธ์ง€, ์ž๋ฐ”๋กœ ์ž‘์„ฑ๋œ ํด๋ž˜์Šค(Servlet๋„ ํฌํ•จ๋จ, package, ์ธํ„ฐํŽ˜์ด์Šค ๋“ฑ), ๊ฐ์ข… ์„ค์ • ํŒŒ์ผ ๋“ฑ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์„œ๋ธ”๋ฆฟ์ด๋ž€? ์ž๋ฐ” ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ตฌ์„ฑ์š”์†Œ ์ค‘ ๋™์ ์ธ ์ฒ˜๋ฆฌ๋ฅผ ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์˜ ์—ญํ• ์ž…๋‹ˆ๋‹ค. ์„œ๋ธ”๋ฆฟ์„ ์ •์˜ํ•ด๋ณด๋ฉด ์„œ๋ธ”๋ฆฟ(servlet)์€ WAS์— ๋™์ž‘ํ•˜๋Š” JAVA ํด๋ž˜์Šค์ž…๋‹ˆ๋‹ค. ์„œ๋ธ”๋ฆฟ์€ HttpServlet ํด๋ž˜์Šค๋ฅผ ์ƒ์†๋ฐ›์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์„œ๋ธ”๋ฆฟ๊ณผ JSP๋กœ๋ถ€ํ„ฐ ์ตœ์ƒ์˜ ๊ฒฐ๊ณผ๋ฅผ ์–ป์œผ๋ ค๋ฉด, ์›น ํŽ˜์ด์ง€๋ฅผ ๊ฐœ๋ฐœํ•  ๋•Œ ์ด ๋‘ ๊ฐ€์ง€(JSP, ์„œ๋ธ”๋ฆฟ)๋ฅผ ์กฐํ™”๋กญ๊ฒŒ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์›น ํŽ˜์ด์ง€๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ํ™”๋ฉด(HTML)์€ JSP..

JAVA ํด๋ž˜์Šค์˜ ๊ตฌ์„ฑ๋ฉค๋ฒ„

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

JAVA ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ

๊ฐ์ฒด์™€ ํด๋ž˜์Šค ํด๋ž˜์Šค - ์ž๋ฐ”์—์„œ๋Š” ์„ค๊ณ„๋„ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ํ•„๋“œ(์ง€์—ญ๋ณ€์ˆ˜,์ „์—ญ๋ณ€์ˆ˜)์™€ ๋ฉ”์†Œ๋“œ๋ฅผ ์ •์˜ ์ธ์Šคํ„ด์Šค - ํด๋ž˜์Šค๋กœ๋ถ€ํ„ฐ ๋งŒ๋“ค์–ด์ง„ ๊ฐ์ฒด ์ธ์Šคํ„ด์Šคํ™” - ํด๋ž˜์Šค๋กœ๋ถ€ํ„ฐ ๊ฐ์ฒด๋ฅผ ๋งŒ๋“œ๋Š” ๊ณผ์ • ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋žจ์˜ ๋‹จ๊ณ„ 1๋‹จ๊ณ„ ํด๋ž˜์Šค ์„ค๊ณ„ 2๋‹จ๊ณ„ ์„ค๊ณ„๋œ ํด๋ž˜์Šค๋ฅผ ๊ฐ€์ง€๊ณ  ์‚ฌ์šฉํ•  ๊ฐœ์ฒด๋ฅผ ์ƒ์„ฑ 3๋‹จ๊ณ„ ์ƒ์„ฑ๋œ ๊ฐœ์ฒด๋ฅผ ์ด์šฉ ํด๋ž˜์Šค ์„ ์–ธ ์ž๋ฐ”์˜ ๊ทœ์น™ ํ•˜๋‚˜์˜์ƒ์˜ ๋ฌธ์ž ์ฒซ๊ธ€์ž์—๋Š” ์ˆซ์ž ํฌํ•จx $ _ ์™ธ์˜ ํŠน์ˆ˜๋ฌธ์ž ๊ธˆ์ง€ ์ž๋ฐ” ํ‚ค์›Œ๋“œ๋Š” ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค public class ํด๋ž˜์Šค ์ด๋ฆ„{ } 2๊ฐœ ์ด์ƒ์˜ ํด๋ž˜์Šค๋„ ์‚ฌ์šฉ๊ฐ€๋Šฅํ•˜๋‹ค. public class Person{ } class Car{ } Person.class, Car.class ๊ฐ๊ฐ ์ƒ์„ฑ๋œ๋‹ค ํด๋ž˜์Šค๋กœ ๋ถ€ํ„ฐ ๊ฐ์ฒด ์ƒ์„ฑ new ์—ฐ์‚ฐ์ž ํด๋ž˜์Šค ๋ณ€์ˆ˜ = new ํด๋ž˜์Šค();