[Servlet / JSP] - JSP

army246ยท2022๋…„ 5์›” 26์ผ
0

Servlet / JSP

๋ชฉ๋ก ๋ณด๊ธฐ
4/5

๐Ÿ’ป 1.JSP (Java Server Page)

  • JSP ๋ž€ HTML ์ฝ”๋“œ์— JAVA ์ฝ”๋“œ๋ฅผ ๋„ฃ์–ด ๋™์  ์›นํŽ˜์ด์ง€๋ฅผ ์ƒ์„ฑํ•˜๋Š” ์›น์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ธฐ์ˆ ์ด๋‹ค.
    servlet์˜ ๊ตฌํ˜„๊ณผ ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ์–ด๋ ต๋‹ค๋Š” ๋‹จ์ ์„ ๋ณด์™„

1-1. JSP ๊ตฌ์กฐ

  • JSP๋Š” HTML ์ฝ”๋“œ ์•ˆ์— JAVA ์ฝ”๋“œ ์ถ”๊ฐ€๋˜๋Š” ๊ตฌ์กฐ
    ๋””์ž์ธ ๋ณ€๊ฒฝ์ด servlet๋ณด๋‹ค ๋” ์‰ฝ๋‹ค.
    web.xml์— ๋“ฑ๋ก, ์–ด๋…ธํ…Œ์ด์…˜ ์ถ”๊ฐ€, ์†Œ์Šค ์ˆ˜์ •ํ›„ ๋ฆฌ๋กœ๋”ฉํ•„์š” ์—†๋‹ค.

    servlet์€ JAVA ์ฝ”๋“œ ์•ˆ์— HTML ์ฝ”๋“œ๋ฅผ ํฌํ•จํ•˜๋Š” ๊ตฌ์กฐ.

1-2. JSP ์‹คํ–‰

  • JSP ๋™์ž‘ ๊ณผ์ •
    • ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์›น ์„œ๋ฒ„์—๊ฒŒ JSP์— ๋Œ€ํ•œ ์š”์ฒญ ์ •๋ณด ์ „๋‹ฌ.
    • ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์š”์ฒญํ•œ JSP๊ฐ€ ์ตœ์ดˆ ์š”์ฒญํ•œ ๊ฒฝ์šฐ๋งŒ JSP๋กœ ์ž‘์„ฑ๋œ ์ฝ”๋“œ๊ฐ€ servlet ์ฝ”๋“œ๋กœ ๋ณ€ํ™˜(JavaํŒŒ์ผ ์ƒ์„ฑ)
    • servlet ์ฝ”๋“œ๋ฅผ ์ปดํŒŒ์ผํ•ด์„œ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ bytecode๋กœ ๋ณ€ํ™˜(classํŒŒ์ผ ์ƒ์„ฑ)
    • servlet ์‹คํ–‰๋˜์–ด ์š”์ฒญ ์ฒ˜๋ฆฌ ํ›„ ์‘๋‹ต ์ •๋ณด๋ฅผ ์ƒ์„ฑ
  • JSP๊ฐ€ ์‹คํ–‰๋˜๋ฉด Servlet์œผ๋กœ ๋ณ€ํ™˜๋˜๋ฉด ์„œ๋ฒ„์—์„œ ๋™์ž‘๋˜๋ฉด์„œ ํ•„์š”ํ•œ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜๊ณ  ์ƒ์„ฑ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์›นํŽ˜์ด์ง€์™€ ํ•จ๊ป˜ ํด๋ผ์ด์–ธํŠธ๋กœ ์‘๋‹ตํ•œ๋‹ค.
  • JSP์— ์ž‘์„ฑํ•œ ๋ชจ๋“  ์ฝ”๋“œ๋“ค์€ _jspService() ๋ฉ”์†Œ๋“œ์— ํฌํ•จ๋œ๋‹ค!

1-3. JSP ํƒœ๊ทธ

์ข…๋ฅ˜ํ˜•์‹์˜๋ฏธ
์ฃผ์„๋ฌธ(Comment)<%-- --%>์„œ๋ธ”๋ฆฟ ๋ณ€ํ™˜ ์ œ์™ธ
์ง€์‹œ์ž(Directive)<%@ %>ํŽ˜์ด์ง€ ์ •๋ณด ์„ค์ •
์„ ์–ธ๋ฌธ(Declaration)<%! %>๋ณ€์ˆ˜, ๋ฉ”์†Œ๋“œ ์„ ์–ธ
์Šคํฌ๋ฆฝํŠธ๋ฆฟ(Scriptlet)<% %>์ž๋ฐ” ์ฝ”๋“œ ์ž‘์„ฑ
ํ‘œํ˜„์‹(Expression)<%= %>์ถœ๋ ฅํ•  ๋ฐ์ดํ„ฐ ์„ค์ •

1-3-1. ์ฃผ์„๋ฌธ(Comment)

  • JSP ์ฃผ์„์€ ์„œ๋ธ”๋ฆฟ์œผ๋กœ ๋ณ€ํ™˜๋  ๋•Œ ์ œ์™ธ๋œ๋‹ค.
    HTML ์ฃผ์„์€ ์„œ๋ธ”๋ฆฟ์— ํฌํ•จ.

JSP ์ฃผ์„ : <%-- JSP ์ฃผ์„ --%>
HTML ์ฃผ์„ : < !-- HTML ์ฃผ์„-->

1-3-2. ์ง€์‹œ์ž(Directive)

  • ์„œ๋ธ”๋ฆฟ ํด๋ž˜์Šค๋กœ ๋ณ€ํ™˜๋  ๋•Œ JSP๊ฐ€ ์–ด๋– ํ•œ ๋‚ด์šฉ์„ ์ถ”๊ฐ€ํ•  ๋•Œ ์‚ฌ์šฉ
์ง€์‹œ์žํ˜•์‹์˜๋ฏธ
page<%@page %>์„œ๋ธ”๋ฆฟ ๋ณ€ํ™˜ ๊ณผ์ • ์ค‘ ์ถ”๊ฐ€ํ•  ํŽ˜์ด์ง€ ์ •๋ณด ์„ค์ •
include<%@ include %>๋‹ค๋ฅธ JSP ์ฝ”๋“œ๋ฅผ ํŠน์ • ์œ„์น˜์— ํฌํ•จ
taglib<%@ taglib %>XML ๊ธฐ๋ฐ˜ ํƒœ๊ทธ ์‚ฌ์šฉ๊ฐ€๋Šฅ ํ•˜๋„๋ก ์„ ์–ธ

page ์ง€์‹œ์ž

์†์„ฑ์˜๋ฏธ
isErrorPage์—๋Ÿฌ ์ฒ˜๋ฆฌ ์ „์šฉ ํŽ˜์ด์ง€์ž„์„ ์„ค์ •
errorPage์—๋Ÿฌ ๋ฐœ์ƒ ์‹œ ์—๋Ÿฌ ์ฒ˜๋ฆฌํ•  ํŽ˜์ด์ง€ ์ง€์ •
import๋ณ€ํ™˜๋œ ์„œ๋ธ”๋ฆฟ ํด๋ž˜์Šค์—์„œ import ํด๋ž˜์Šค๋ฅผ ์„ค์ •
session์„ธ์…˜ ๊ฐ์ฒด ๊ธฐ๋ณธ์ ์œผ๋กœ ์‚ฌ์šฉ ์—ฌ๋ถ€ ์„ค์ •

1-3-3. โ—๏ธ ์Šคํฌ๋ฆฝํŠธ๋ฆฟ(Scriptlet)

  • JSP ์•ˆ์—์„œ JAVA ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•  ๋•Œ ์‚ฌ์šฉ
    JAVA ์ฝ”๋“œ๋Š” Servlet์œผ๋กœ ๋ณ€ํ™˜ ๋  ๋•Œ _jspService() ๋ฉ”์†Œ๋“œ ์•ˆ์— ํฌํ•จ.
<%
		// JAVA ์ฝ”๋“œ
%>

1-3-4. โ—๏ธ ํ‘œํ˜„์‹(Expression)

  • ๋ณ€์ˆ˜, ๋ฉ”์†Œ๋“œ ๊ฐ’ ํŠน์ • ์œ„์น˜์— ์ถœ๋ ฅ
<%= ๋ณ€์ˆ˜, ๋ฉ”์†Œ๋“œ ํ˜ธ์ถœ %>

Expression์€ ์„ธ๋ฏธ ์ฝœ๋ก ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.

profile
์ฒœ์ฒœํžˆ ๊พธ์ค€ํžˆ

0๊ฐœ์˜ ๋Œ“๊ธ€