Day03(JSP ํŽ˜์ด์ง€์˜ ๊ตฌ์„ฑ์š”์†Œ)๋””๋ ‰ํ‹ฐ๋ธŒ(Directive)
ยท
๐Ÿ“† Today I Learned(๊ฐœ๋ฐœ์–ธ์–ดํ•™์Šต)/JSP
JSP ํŽ˜์ด์ง€์— ๋Œ€ํ•œ ์„ค์ • ์ •๋ณด๋ฅผ ์ง€์ •ํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. ๋””๋ ‰ํ‹ฐ๋ธŒ ์„ค๋ช… page JSP ํŽ˜์ด์ง€์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ง€์ •ํ•œ๋‹ค. JSP๊ฐ€ ์ƒ์„ฑํ•˜๋Š” ๋ฌธ์„œ์˜ ํƒ€์ž…, ์ถœ๋ ฅ ๋ฒ„ํผ์˜ ํฌ๊ธฐ, ์—๋Ÿฌ ํŽ˜์ด์ง€ ๋“ฑ JSP ํŽ˜์ด์ง€์—์„œ ํ•„์š”๋กœ ํ•˜๋Š” ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•œ๋‹ค. taglib JSP ํŽ˜์ด์ง€์—์„œ ์‚ฌ์šฉํ•  ํƒœ๊ทธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ง€์ •ํ•œ๋‹ค. include JSP ํŽ˜์ด์ง€์˜ ํŠน์ • ์˜์—ญ์— ๋‹ค๋ฅธ ๋ฌธ์„œ๋ฅผ ํฌํ•จ์‹œํ‚จ๋‹ค.
Day02(ํ…Œ์ด๋ธ”์•ˆ์— ๊ตฌ๊ตฌ๋‹จ ๋งŒ๋“ค๊ธฐ !)
ยท
๐Ÿ“† Today I Learned(๊ฐœ๋ฐœ์–ธ์–ดํ•™์Šต)/JSP
์ถœ๋ ฅ๋‚ด์šฉ
Day02(declaration)์„ ์–ธ์‹ !
ยท
๐Ÿ“† Today I Learned(๊ฐœ๋ฐœ์–ธ์–ดํ•™์Šต)/JSP
00declaration.jsp์˜ ์ฝ”๋“œ๋‚ด์šฉ ์„ ์–ธ์‹์˜ ์œ„์น˜๋Š” ์ค‘์š”ํ•˜์ง€์•Š์ง€๋งŒ ์„ ์–ธ์‹œ์—๋Š” !๋ฅผ ๊ผญ ๋ถ™์—ฌ์•ผํ•œ๋‹ค. ํ•„๋“œ์ƒ์„ฑ ๋ฐ ๋ฉ”์†Œ๋“œ์ƒ์„ฑ ๋“ฑ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
Day02(servlet, jsp)
ยท
๐Ÿ“† Today I Learned(๊ฐœ๋ฐœ์–ธ์–ดํ•™์Šต)/JSP
servlet : java๋งŒ์œผ๋กœ ์›น ํŽ˜์ด์ง€(html)๋ฅผ ๋งŒ๋“ค์–ด๋ณด์ž ! ๋ผ๊ณ  ํ•ด์„œ ๋งŒ๋“ค์–ด์ง„๊ฒƒ HttpServelt์„ ์ƒ์†๋ฐ›์€ ํด๋ž˜์Šค = ์„œ๋ธ”๋ฆฟ jsp๋‚˜์™”์ง€๋งŒ ํ™”๋ฉด ๋ง๊ณ  ๋‹ค๋ฅธ ๊ฒƒ์— ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ค‘์š”ํ•จ jsp out.print ํ•˜๊ธฐ ๊ท€์ฐฎ์•„์„œ ๋‚˜์˜ด ํ™”๋ฉด์€ ์ด์ œ jsp๋กœ๋งŒ !
Day02(redirect)
ยท
๐Ÿ“† Today I Learned(๊ฐœ๋ฐœ์–ธ์–ดํ•™์Šต)/JSP
11redirect.jsp์˜ ์ฝ”๋“œ๋‚ด์šฉ ๋‚˜๋Š” ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ ์ „ ํŽ˜์ด์ง€ 11redirectPage.jsp์˜ ์ฝ”๋“œ๋‚ด์šฉ redirect๋Š” 2๋ฒˆ ์š”์ฒญํ•œ๋‹ค. ๋ฌด์Šจ๋ง์ด๋ƒ๋ฉด ์œ„ ์ฝ”๋“œ์˜ ๊ฒฝ์šฐ url์š”์ฒญ์‹œ http://localhost:8080/study/01basic/11redirect.jsp?name=์ฐฝ๋ฏผ ์œผ๋กœ ์ ‘๊ทผ์‹œ url์€ http://localhost:8080/study/01basic/11redirectPage.jsp?name=์ฐฝ๋ฏผ ์œผ๋กœ ๋ฐ”๋€๋‹ค. ์™œ? 11redirect.jsp๋ฅผ ๋ณด๋ฉด response.sendRedirect("11redirectPage.jsp?name=" + encodedName); ๋ฅผ ํ†ตํ•ด์„œ ๋‹ค์‹œํ•œ๋ฒˆ ์š”์ฒญํ•˜๋„๋ก ๋˜์–ด์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  11redirectPage.jsp์—์„œ๋Š” request.getP..
Day02(aboutRequest)
ยท
๐Ÿ“† Today I Learned(๊ฐœ๋ฐœ์–ธ์–ดํ•™์Šต)/JSP
10form.jsp์˜ ์ฝ”๋“œ๋‚ด์šฉ ์šฑ ์ฐฌ ์šด 10aboutRequest.jsp์˜ ์ฝ”๋“œ๋‚ด์šฉ ์šฑ = ์ฐฌ = ์šด = IP : ์›น ๊ฒฝ๋กœ : URI : URL : ๋ชจ๋“  ํŒŒ๋ผ๋ฏธํ„ฐ ๋ชจ๋“  ํ—ค๋” request.getRemoteAddr() = ์›๊ฒฉ์ฃผ์†Œ(IP) (๋‹ค๋ฅธ ๊ณณ์—์„œ ์ ‘์† ์‹œ ์ƒ๋Œ€์ชฝ์˜ ip๋ฅผ ์•Œ ์ˆ˜ ์žˆ๋‹ค.) request.getContextPath() = ์›น ๊ฒฝ๋กœ(๋ฌด์กฐ๊ฑด ์•”๊ธฐ) request.getRequestURI() = URI request.getRequestURL() = URL ๋ชจ๋“  ํŒŒ๋ผ๋ฏธํ„ฐ, ๋ชจ๋“  ํ—ค๋”๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ๊ตฌ๊ฐ„์˜ ์ถœ๋ ฅ ๋‚ด์šฉ์„ ๋ณด๋ฉด Key : Value๋กœ ๋˜์–ด์žˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์ฒœ์ฒœํžˆ ๋ฐฐ์›Œ๊ฐˆ๋“ฏํ•˜๋‹ค. ์ถœ๋ ฅ๋‚ด์šฉ
Day01(ํƒ€์ž…๋ณ€ํ™˜)
ยท
๐Ÿ“† Today I Learned(๊ฐœ๋ฐœ์–ธ์–ดํ•™์Šต)/JSP
09form.jsp์˜ ์ฝ”๋“œ๋‚ด์šฉ ์ทจ๋ฏธ ํฐ ๋‚˜์ด ์ œ์ถœํ•˜๊ธฐ 09requestETC.jsp์˜ ์ฝ”๋“œ๋‚ด์šฉ ์ทจ๋ฏธ : ํฐ : ๋‚˜์ด : 1๋…„๋’ค ๋‚˜์ด : 09form์—์„œ ์—์„œ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ž…๋ ฅ ๋ฐ›์€๊ฐ’์€ ์ˆซ์ž์ด๋‹ค. ํ•˜์ง€๋งŒ ๊ทธ๊ฒƒ์„ 09requestETC์—์„œ String age = request.getParameter("age");๋กœ Stringํƒ€์ž…์œผ๋กœ ๋ฐ›๊ฒŒ ๋˜๋ฉด 1๋…„๋’ค ๋‚˜์ด๋Š” ์ถœ๋ ฅํ•  ์ˆ˜ ์—†์„ ๊ฒƒ์ด๋‹ค. String์€ ๋ฌธ์ž์ด๊ธฐ ๋•Œ๋ฌธ์— ์ˆซ์ž์—ฐ์‚ฐ์ด ๋˜์ง€์•Š๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ํƒ€์ž…๋ณ€ํ™˜์ด ํ•„์š”ํ•ด์ง„๋‹ค. int agePlus = Integer.parseInt(age) + 1; ์ด๋Ÿฐ์‹์œผ๋กœ ๋ง์ด๋‹ค.
Day01(img)
ยท
๐Ÿ“† Today I Learned(๊ฐœ๋ฐœ์–ธ์–ดํ•™์Šต)/JSP
request.getContextPath()๋Š” ์›น ๊ฒฝ๋กœ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์–ป์„ ๋•Œ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋Š”๋ฐ, imgํŒŒ์ผ์˜ ๊ฒฝ๋กœ ์‚ฌ์šฉ ์‹œ์— ํ™œ์šฉ๊ฐ€๋Šฅํ•˜๋‹ค. ์›น ๊ฒฝ๋กœ๋Š” ์–ธ์ œ๋“ ์ง€ ๋ฐ”๋€” ์ˆ˜ ์žˆ๊ธฐ๋•Œ๋ฌธ์— ์œ„์˜ 1,2,3์œผ๋กœ ์ด๋ฏธ์ง€ ๊ฒฝ๋กœ๋ฅผ ์ง€์ •ํ•  ๊ฒฝ์šฐ์—๋Š” ๊ฒฝ๋กœ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋ฐ”๊ฟ”์ค˜์•ผํ•˜๋Š” ๋ถˆํŽธํ•จ์ด ์ƒ๊ธธ ์ˆ˜ ์žˆ๋‹ค. ๋งŒ์•ฝ ๋ฐ”๊ฟ”์•ผ๋  ๊ฒƒ์ด 1์–ต๊ฐœ๊ฐ€ ๋„˜๋Š”๋‹ค๋ฉด(๊ทน๋‹จ์ ์ด์ง€๋งŒ) ๋ฐ”๊ฟ€์ˆ˜๋Š” ์žˆ๊ฒ ์ง€๋งŒ ์‹œ๊ฐ„์ด ์˜ค๋ž˜๊ฑธ๋ฆด๊ฒƒ์ด๊ณ  ๊ฒŒ๋‹ค๊ฐ€ ์‚ฌ๋žŒ์ด ํ•˜๋‚˜ํ•˜๋‚˜ ์ˆ˜์ •ํ•˜๋‹ค๋ณด๋ฉด ์‹ค์ˆ˜ํ•˜์ง€ ์•Š์„๊ฒƒ์ด๋ผ ํ™•์‹ ํ•  ์ˆ˜ ์—†์„ ๊ฒƒ์ด๋‹ค. ํ•˜์ง€๋งŒ ์ด๋ฏธ์ง€ ๊ฒฝ๋กœ๋ฅผ ์ง€์ •ํ•  ๋•Œ request.getContextPath()๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋ฉด ํ•ด๋‹น ์„œ๋ฒ„์˜ ์›น ๊ฒฝ๋กœ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ค๊ธฐ ๋•Œ๋ฌธ์— ๊ฒฝ๋กœ๊ฐ€ ๋ฐ”๋€๋‹คํ•ด๋„ ๋”ฐ๋กœ ์ˆ˜์ •ํ•˜์ง€ ์•Š์•„๋„ ๋  ๊ฒƒ์ด๋‹ค.