[JSP] 2.1~2 JSP 페이지의 구성 요소

2022. 4. 7. 10:13JAVA/Servlet&JSP

1. JSP에서 HTML 문서를 생성하는 기본 코드 구조

<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
<%
	String bookTitle = "JSP 2.0";
	String author = "최범균";
%>
<b><%=bookTitle %></b>(<%=author %>)입니다.
</body>
</html>

JSP 페이지에 대한 정보 표시

  • JSP 페이지가 생성하는 문서 타입
  • JSP 페이지에서 사용할 커스텀 태그
  • 표현 언어의 사용 여부
  • JSP 페이지에서 사용할 자바 클래스 지정
<%@ page contentType = "text/html; charset=euc-kr" %>

 

캐릭터 셋(character set)

캐릭터 셋은 문자의 집합을 나타낸다. 한글 문자 집합은 'euc-kr', 알파벳 및 라틴 문자 집합은 'iso-8859-1', 전 세계의 문자를 모아 하나의 집합으로 묶은 것이 유니코드(unicode)이다.

 

2. JSP 페이지의 구성 요소

  • 디렉티브(Directive)
  • 스크립트: 스크립트릿, 표현식, 선언부
  • 표현 언어
  • 기본 객체
  • 정적 데이터
  • 액션 태그(Action Tag)
  • 커스텀 태그(Custom Tag)

 

2.1 디렉티브

디렉티브는 JSP 페이지에 대한 설정 정보를 지정할 때 사용됨

 

[문법]

<%@ 디렉티브이름 속성1="값1" 속성2="값2" ... %>

[예제]

<%@ page contentType = "text/html; charset=euc-kr" %>

 

JSP가 제공하는 디렉티브 종류

  • page : JSP 페이지에 대한 정보를 지정함. JSP가 생성하는 문선의 타입, 출력 버퍼의 크기, 에러 페이지 등 JSP 페이지에서 필요로 하는 정보를 입력함
  • taglib : JSP 페이지에서 사용할 태그 라이브러리를 지정함
  • include : JSP 페이지에의 특정 영역에 다른 문서를 포함시킴

 

2.2 스크립트 요소

스크립트 요소는 JSP에서 실시간으로 문서의 내용을 생성하기 위해 사용되는 것입니다.

  • 표현식 - 값을 출력, <%= %>
  • 스크립트릿 - 자바 코드를 실행, <% %>
  • 선언부 - 자바 메서드(함수)를 생성, <%! %>

 

2.3 기본 객체

  • request        : 클라이언트의 요청 정보를 저장
  • response      : 클라이언트의 응답 정보를 저장
  • session        : HTTP 세션 정보를 저장
  • application   : 웹 어플리케이션 정보를 저장
  • page           : JSP 페이지를 구현한 자바 인스턴스

 

2.4 표현 언어

  • 표현 언어(Expression Language, EL)는 JSP 페이지 내부에서 사용되는 간단한 스크립트 언어
<html>
<body>
...
request의 name 속성 : ${requestScope.name}
code 파라미터 : ${param.code}
</body>
</html>

 

2.5 액션 태그와 커스텀 태그

액션 태그는 XML 문서의 태그와 같은 모양을 취하며, JSP 페이지에서 특별한 기능을 제공합니다.

[문법]

<jsp:액션태그이름 .../>

 

예를 들어 <jsp:include> 액션 태그는 특정한 페이지를 현재 위치에 포함시킬때 사용됩니다.

[예제]

<jsp:include page="header.jsp" flush="tru"/>

 

액션태그의 종류

JSP Action Tags Description
jsp:forward request와 response 객체를 다른 페이지로 이동
jsp:include 특정한 페이지를 현재 위치에 포함시킴
jsp:useBean 빈 객체를 생성시키거나 위치시킴
jsp:setProperty 빈 객체의 속성 값을 수정
jsp:getProperty 빈 객체의 속성값을 가져옴
jsp:plugin applet과 같은 컴포넌트를 적용함
jsp:param 파라미터 값을 설정함, 대개 forward와 include에 사용됨
jsp:fallback - 플러그인이 작동하는 경우 메시지를 출력하는데 사용할수 있음
- jsp:plugin에 사용됨

 

커스텀 태그(custom tag)

커스텀 태그는 개발자가 직접 개발하여 생성하는 태그입니다. JSP 코드에서 중복되는 것들을 모듈화하거나 또는 스크립트 코드를 사용할 때 소스 코드의 복잡함을 제거하기 위해 사용됩니다.

 

References

JSP 2.0 프로그래밍 기초부터 중급까지