프로그래밍/JSP

JSP 2일차 - 스크립트,디렉티브 태그

윤도ri 2022. 1. 19. 23:36

>스크립트 태그
- HTML 내부에 자바 코드를 넣어 프로그래밍이 가능하도록 만들 수 있다. 

1.선언문(Declaration)
<%!    %>
자바 변수나 메소드를 정의하는데 사용되는 태그
2.스크립틀릿(Scriptlet)
<%     %>
자바 변수 선언 및 자바 로직 코드를 작성하는데 사용되는 태그 
3.표현문(Expression)
<%=    %>
변수,계산식, 메소드 호출의 리턴값 등을 표현해주는 태그
HTML 문서에 안에 작성한 값이 그대로 표현된다. 타입은 문자열이다.

 그렇다면  sayHello("JSP")의 결과: <%=sayHello("JSP")% ; >  이렇게도 사용이 될까? 뒤에 세미콜론을 붙여서 표현문을 쓰면 과연 정상적으로 작동을 할까? 답은 아니다 이다.

JSP는 코드가 해석되서 서블릿으로 바뀌어 날라간다. 그래서 서블릿으로 가면 

out.println("sayHello(\"JSP\")의 결과: ");

out.println(sayHello("JSP"););    -------------> 로 코드가 해석될것이다. 오류발생!

* 그러므로 표현문은 서블릿의 out.print()메소드의 매개변수로 전달되기 때문에 세미콜론은 사용하면 안된다. 

 

<주석>

1.HTML 주석 : <!--- ---!>

 : HTML 주석은 컴파일이 모두 되고 나서 페이지에서 감춰지는 형태 따라서 내부 내용들이 다 실행된다.

2.JSP 주석 : <%---  ---%> 

 : JSP주석은 안에 작성된 모든 코드가 무시되므로 JSP 주석을 권장한다.

 

ex)예제-JSP로 테이블 만들기


>디렉티브 태그 
<%@ page %>
- 현재 JSP 페이지에 대한 정보를 설정하는 태그이다.
- 되도록 페이지 최상단에 선언한다.
- import를 제외하고는 딱 한번씩만 작성할 수 있다. 

[속성명]
language        :사용할 프로그래밍 언어   / java
contentType    :생성할 문서의 콘텐츠 유형  / text/html
pageEncoding :인코딩 설정 / ISO-8859-1
session          :세션을 사용할 것인지 여부 / true
info              :페이지에 대한 설명 작성(주석처럼 이용)
errorPage       :예외 발생시 이동할 페이지 설정
isErrorPage     :예외페이지로 설정할지에 대한 여부 / false
import           :사용할 자바 클래스 추가 

 

ex)예제2.예외발생시 이동할페이지 작성(errorPage), 이동할 페이지에 예외에 관한 내용적기(isErrorPage)

오류발생시 이동할 페이지 설정하기
예외 페이지로 설정하겠다=true



>include 디렉티브 태그
<%@ include %>
- 현재 JSP 페이지의 특정 영역에 외부 파일의 내용을 포함시키는 태그이다.
- 보통 header와 footer는 대부분의 페이지에서 동일한 내용으로 작성되기 때문에 각 JSP 파일마다 그 코드들을 반복해서 작성하는것이 아니라 유지보수 및 편의를 위해 외부 파일로 만든 후 include하여 사용한다.

실행시 header, footer파일까지 함께 나오는것을 볼 수 있다.

ex) 예제3문제

3번문제 출력결과

'프로그래밍 > JSP' 카테고리의 다른 글

JSP 6일차 - DBCP, JNDI,Mybatis  (0) 2022.01.27
JSP 5일차 - Session, Ajax  (0) 2022.01.24
JSP 4일차 - 내장객체, 쿠키  (0) 2022.01.21
JSP 3일차 - 액션태그  (0) 2022.01.20
JSP 1일차 - JSP 란?  (0) 2022.01.17