๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

FOR SW ENGINEER๐Ÿ‘ฉ‍๐Ÿ’ป/JSP24

JSP - ํ•„ํ„ฐ(Filter) ํ•„ํ„ฐ(Filter) HTTP ์š”์ฒญ๊ณผ ์‘๋‹ต์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋Š” ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ํด๋ž˜์Šค. ํ•„ํ„ฐ๋Š” ๊ฐ์ฒด์˜ ํ˜•ํƒœ๋กœ ์กด์žฌํ•˜๋ฉฐ ํด๋ผ์ด์–ธํŠธ์—์„œ ์˜ค๋Š” ์š”์ฒญ(request)๊ณผ ์ตœ์ข… ์ž์› (jsp, servlet ๋“ฑ) ์‚ฌ์ด์— ์œ„์น˜ํ•ด ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ ์ •๋ณด ์•Œ๋งž๊ฒŒ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Œ. ๋ฐ˜๋Œ€๋กœ ์ตœ์ข… ์ž์›๊ณผ ํด๋ผ์ด์–ธํŠธ๋กœ ๊ฐ€๋Š” ์‘๋‹ต(response)์‚ฌ์ด์— ์œ„์น˜ํ•ด ์ตœ์ข… ์ž์›์˜ ์š”์ฒญ ๊ฒฐ๊ณผ ์•Œ๋งž๊ฒŒ ๋ณ€๊ฒฝํ•  ์ˆ˜๋„ ์žˆ์Œ. ํ•„ํ„ฐ์‚ฌ์šฉ ex) JSP/์„œ๋ธ”๋ฆฟ ๋“ฑ์„ ์‹คํ–‰ํ•˜๊ธฐ ์ด์ „์— ์š”์ฒญ์ด ์˜ฌ๋ฐ”๋ฅธ์ง€ ๋˜๋Š” ์ž์›์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์„ ๊ฐ€์กŒ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋ฏธ๋ฆฌ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Œ. JSP๋‚˜ ์„œ๋ธ”๋ฆฟ์ด ์ƒ์„ฑํ•œ ์‘๋‹ต ๋ฐ์ดํ„ฐ ๋ณ€๊ฒฝํ•˜๊ฑฐ๋‚˜์ทจ์†Œํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•  ์ˆ˜๋„ ์žˆ์Œ. 1. ํ•„ํ„ฐ(filter) ์ธํ„ฐํŽ˜์ด์Šค 1. public void init(FilterConfig fi.. 2021. 12. 15.
JSP - MVC(model- view - controller) 1. MVC(model-view-controller) MVC๋Š” ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค, ๋ฐ์ดํ„ฐ ๋ฐ ๋…ผ๋ฆฌ ์ œ์–ด๋ฅผ ๊ตฌํ˜„ํ•˜๋Š”๋ฐ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๋””์ž์ธ ํŒจํ„ด์ด๋‹ค. ๋ง ๊ทธ๋Œ€๋กœ ๋ชจ๋ธ, ๋ทฐ, ์ปจํŠธ๋กค๋Ÿฌ์˜ ์„ธ ๋ถ€๋ถ„์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ, ์†Œํ”„ํŠธ์›จ์–ด์˜ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง๊ณผ ํ™”๋ฉด์„ ๊ตฌ๋ถ„ํ•˜๋Š”๋ฐ ์ค‘์ ์„ ๋‘๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋กœ์ง๊ณผ ํ™”๋ฉด์„ ๊ตฌ๋ถ„ํ•จ์— ๋”ฐ๋ผ ๋”๋‚˜์€ ์—…๋ฌด์˜ ๋ถ„๋ฆฌ์™€ ํ–ฅ์ƒ๋œ ๊ด€๋ฆฌ๋ฅผ ์ œ๊ณตํ•ด์ค€๋‹ค. Model : ๋น„์ฆˆ๋‹ˆ์Šค ์˜์—ญ์˜ ๋กœ์ง ์ฒ˜๋ฆฌ -> ๋กœ์ง ์ฒ˜๋ฆฌ ํด๋ž˜์Šค, ์ž๋ฐ”๋นˆ View : ๋น„์ฆˆ๋‹ˆ์Šค ์˜์—ญ์— ๋Œ€ํ•œ ํ”„๋ ˆ์  ํ…Œ์ด์…˜ ๋ทฐ (์‚ฌ์šฉ์ž๊ฐ€ ๋ณด๊ฒŒ ๋  ๊ฒฐ๊ณผ ํ™”๋ฉด) -> JSP Controller : ์‚ฌ์šฉ์ž์˜ ์ž…๋ ฅ์ฒ˜๋ฆฌ์™€ ํ๋ฆ„์ œ์–ด ๋‹ด๋‹น. ->Servlet โ–ถ mvc๋Š” 2๊ฐ€์ง€ ๋ชจ๋ธ ๊ตฌ์กฐ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Œ. ๋ชจ๋ธ1 - JSP๋ฅผ ์ด์šฉํ•œ ๋‹จ์ˆœ ๋ชจ๋ธ - ์›น ๋ธŒ๋ผ.. 2021. 12. 14.
JSP - Servlet Servlet ์„œ๋ธ”๋ฆฟ์€ JSPํ‘œ์ค€์ด ๋‚˜์˜ค๊ธฐ ์ „ ๋งŒ๋“ค์–ด์ง„ ํ‘œ์ค€์œผ๋กœ, ์ž๋ฐ”๋กœ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜๋ฅผ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๊ธฐ ์œ„ํ•ด ๋งŒ๋“ค์–ด์กŒ๋‹ค. ์„œ๋ธ”๋ฆฟ์„ ์ด์šฉํ•˜๋ฉด ์ž๋ฐ” ํด๋ž˜์Šค๋ฅผ ์ด์šฉํ•ด ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•˜๊ฒŒ ๋œ๋‹ค. 1. ์„œ๋ธ”๋ฆฟ ๊ทœ์•ฝ์— ๋”ฐ๋ผ ์ž๋ฐ” ์ฝ”๋“œ ์ž‘์„ฑ 2. ์ž๋ฐ” ์ฝ”๋“œ ์ปดํŒŒ์ผํ•ด ํด๋ž˜์Šค ํŒŒ์ผ ์ƒ์„ฑ 3. /WEB-INF/classesํด๋”์— ํด๋ž˜์Šค ํŒŒ์ผ์„ ํŒจํ‚ค์ง€์— ์•Œ๋งž๊ฒŒ ์œ„์น˜์‹œํ‚จ๋‹ค. 4. web.xmlํŒŒ์ผ์— ์„œ๋ธ”๋ฆฟ ํด๋ž˜์Šค ์„ค์ • 5. ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ํ™•์ธ ์„œ๋ธ”๋ฆฟ ๊ฐœ๋ฐœ๊ณผ์ •์€ JSP์™€ ๋น„๊ตํ•˜๋ฉด ๋ช‡๊ฐ€์ง€ ๊ณผ์ •์ด ์ถ”๊ฐ€๋˜์–ด ๋” ๋ณต์žกํ•จ, ํ•˜์ง€๋งŒ MVCํŒจํ„ด์„ ์ง€์›ํ•˜๋Š” ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ๋งŒ๋“ค์–ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ์„œ๋ธ”๋ฆฟ์œผ๋กœ ๊ธฐ๋ฐ˜ ์ฝ”๋“œ๋ฅผ ๊ฐœ๋ฐœํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์•„, ์›น ๊ฐœ๋ฐœ์‹œ ์„œ๋ธ”๋ฆฟ ์ž์ฒด์— ๋Œ€ํ•ด ์ดํ•ดํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Œ. 1. ์„œ๋ธ”๋ฆฟ ๊ตฌํ˜„ - ์„œ๋ธ”๋ฆฟ์„ ๊ตฌํ˜„ํ•˜.. 2021. 12. 10.
JSP - ๋ถ€ํŠธ์ŠคํŠธ๋žฉ(BootStrap) ์‚ฌ์šฉ ๋ถ€ํŠธ์ŠคํŠธ๋žฉ : ๋ฐ˜์‘ํ˜• ์›น ๊ฐœ๋ฐœ์„์œ„ํ•œ HTML, CSS, JSํ”„๋ ˆ์ž„์›Œํฌ ์›น ํ”„๋กœ์ ํŠธ ๊ฐœ๋ฐœ์‹œ ์›น ํŽ˜์ด์ง€์— ์Šคํƒ€์ผ์„ ์ฃผ๊ณ ์‹ถ์„๋•Œ ๊ธฐ์กด์—๋Š” css๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ง์ ‘ ์‚ฌ์šฉ์ž๊ฐ€ ์ฝ”๋“œ๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ์›น ์‚ฌ์ดํŠธ๋ฅผ ๊พธ๋ฉฐ์ฃผ์—ˆ๋‹ค. ๋ถ€ํŠธ์ŠคํŠธ๋žฉ์€ css๋กœ ์ง์ ‘ ์Šคํƒ€์ผ์„ ์ž…๋ ฅํ•˜์ง€ ์•Š๊ณ ๋„ ์ง€์ •๋˜์–ด์žˆ๋Š” ๋‹จ์ˆœํ•œ ์ฝ”๋“œ๋งŒ์œผ๋กœ ์›น ํŽ˜์ด์ง€๋ฅผ ๊พธ๋ฐ€ ์ˆ˜ ์žˆ๋‹ค. ๋ถ€ํŠธ์ŠคํŠธ๋žฉ์„ ์‚ฌ์šฉํ•˜๋ฉด ์ฝ”๋”ฉ๋Ÿ‰์ด ์ค„์–ด ๊ฐœ๋ฐœ์‹œ๊ฐ„๋„ ์ค„์–ด๋“ค๊ณ , ๋””์ž์ธ ๋˜ํ•œ ๊น”๋”ํ•˜๊ฒŒ ์ œ์ž‘ํ•  ์ˆ˜ ์žˆ๋‹ค. 1. ๋ถ€ํŠธ์ŠคํŠธ๋žฉ ์‚ฌ์šฉ ์ „ ๊ธฐ๋ณธ ์„ธํŒ… ๋ถ€ํŠธ์ŠคํŠธ๋žฉ ํŽ˜์ด์ง€์— ์ ‘์† : https://getbootstrap.com/ ์œ„์˜ ํ™”์‚ดํ‘œ ๋‘๊ณณ์ค‘ ํ•œ๊ณณ ํด๋ฆญ(์–ด์งœํ”ผ ๊ฐ™์€ ์‚ฌ์ดํŠธ) ์œ„ ๊ทธ๋ฆผ์˜ ๊ฒฝ๋กœ๋กœ ์ด๋™ํ•˜์—ฌ CSS๊ด€๋ จ ํŒŒ์ผ๋“ค ๋‹ค์šด ๋ฐ›๋Š”๋‹ค. cssํŒŒ์ผํด๋” ๋งŒ๋“ค์–ด ๋‹ค์šด๋ฐ›์€ css์ž๋ฃŒ ๋ณต์‚ฌํ•ด ๋ถ™์—ฌ ๋„ฃ์–ด๋‘”๋‹ค. ํ”„๋กœ์ ํŠธ ํŒŒ์ผ๋‚ด.. 2021. 12. 9.