Chapter 2 스크립트 태그 : 시작 페이지 만들기

Ruinak·2021년 5월 8일
0

JSP 웹 프로그래밍

목록 보기
2/5
post-thumbnail

2-1 스크립트 태그의 개요

  • JSP는 태그를 이용하여 문법을 기술함
  • JSP 태그는 크게 스크립트 태그(stcript tag), 디렉티브 태그(directive tag), 액션 태그(action tag)로 나뉨
    - 스크립트 태그 : HTML 코드에 자바 코드를 넣어 프로그램이 수행하는 기능을 구현할 수 있음
    - 디렉티브 태그 : JSP 페이지를 어떻게 처리할 것인지 설정하여 JSP 페이지에 대한 정보를 JSP 컨테이너에 보냄
    - 액션 태그 : 클라이언트/서버에 어떤 작동을 행하도록 명령을 지시하는 XML 형태의 태그로, JSP 페이지 사이에서 제어를 이동할 수도 있음
  • 스크립트 태그의 종류
    - 선언문(declaration) : 자바 변수나 메서드를 정의하는데 사용. <%!....%>
    - 스크립틀릿(scriptlet) : 자바 로직 코드를 작성하는데 사용. <%....%>
    - 표현문(expression) : 변수, 계산식, 메서드 호출 결과를 문자열 형태로 출력하는데 사용. <%=....%>
  • JSP 페이지가 서블릿 프로그램에서 서블릿 클래스로 변환할 때 JSP 컨테이너가 자바 코드가 삽입되어 있는 스크립트 태그를 처리하고 나머지는 HTML 코드나 일반 텍스트로 간주

  • 선언문 태그로 작성한 코드는 서블릿 프로그램에서 선언부에 해당하고 _jspService() 메서드 외부에 배치됩니다.
  • 스크립틀릿 태그로 작성된 코드는 서블릿 프로그램에서 처리부에 해당하고 _jspService() 메서드 내부에 배치됩니다.
  • 표현문 태그로 작성한 코드는 서블릿 프로그램에서 출력부에 해당하고, 표현문의 결과 값은 _jspService() 메서드 내부에 있는 out.print() 메서드의 매개변수가 되어 문자열 형태로 출력되어 다음과 같은 결과를 냅니다.
  • 여기서 JSP 표현문 태그의 구문 전체는 서블릿 프로그램에서 out.print() 메서드의 매개변수가 되기 때문에 세미콜론( ; )을 사용해서는 안 됩니다.

2-2 선언문 태그의 기능과 사용법

  • 선언문 태그는 변수나 메서드 등을 선언하는 태그로 다음과 같은 형식 <%! 자바 코드;%>
    - 선언문 태그는 각 행이 세미콜론( ; ) 으로 끝나야 함
  • 선언문 태그에 선언된 변수와 메소드는 서블릿 프로그램으로 번역될 때 _jspService() 메서드 외부에 배치되므로 JSP 페이지 임의의 위치에서 선언할 수 있음
    - 스크립틀릿 태그보다 나중에 선언해도 스크립틀릿 태그에서 사용 가능
  • 선언문 태그로 선언된 변수는 서블릿 프로그램으로 번역될때 클래스 수준의 멤버 변수가 되므로 전역변수로 사용됨

예제 2-1 선언문 태그에 전역변수 사용하기

예제 2-2 선언문 태그에 전역 메서드 사용하기 (1)

예제 2-3 선언문 태그에 전역 메서드 사용하기 (2)

2-3 스크립틀릿 태그의 기능과 사용법

  • 스크립틀릿 태그는 자바 코드로 이루어진 로직 부분을 표현하며, 다음과 같은 형식으로 out 객체를 사용하지 않고도 쉽게 HTML 응답을 만들어 낼 수 있음 <% 자바 코드; %>
    - 스크립틀릿 태그는 각 행이 세미콜론( ; ) 으로 끝나야 함
  • 스크립틀릿 태그는 가장 일반적으로 사용되며 변수 또는 메서드 선언, 유효식 등 다수를 포함할 수 있음
  • 모든 텍스트, HTML 태그, 또는 JSP 요소는 스크립틀릿 태그 외부에 있어야 함

선언문 태그와 스크립틀릿 태그의 비교

  1. 선언문 태그
    • 변수뿐만 아니라 메서드를 선언할 수 있음
    • 서블릿 프로그램으로 변환될 때 _jspService() 메서드 외부에 배치
  2. 스크립틀릿 태그
    • 메서드 없이 변수만을 선언할 수 있음
    • 서블릿 프로그램으로 변환될 때 _jspService() 메서드 내부에 배치

예제 2-4 스크립틀릿 태그에 지역변수 사용하기

예제 2-5 스크립틀릿 캐그에 0부터 10까지의 짝수 출력하기

2-4 표현문 태그의 기능과 사용법

  • 표현문 태그는 다음과 같이 <%=와 %>를 사용하여 웹 브라우저에 출력할 부분을 표현함 <%= 자바 코드%>
    - 각 행을 세미콜론으로 종료할 수 없음
  • 표현문 태그를 이용하여 선언문 태그 또는 스크립틀릿 태그에서 선언된 변수나 메서드의 반환 값을 외부로 출력할 수 있음
  • 표현문 태그는 스크립틀릿 태그에 사용할 수 없으므로 out.print() 메서드를 사용해야 함
  • 숫자, 문자, 불린(boolean) 등의 기본 데이터 타입과 자바 객체 타입도 사용 가능
  • 모든 자바 코드의 값은 문자열로 변환되어 웹 브라우저에 출력 됨
  • 기본 데이터 타입은 toString()을 통해 출력되고, 자바 객체 타입은 java.lang.Object 클래스의 toString() 메서드를 사용하거나 자체에서 선언한 toString()을 사용하여 출력 됨

예제 2-6 표현문 태그로 현재 날짜 출력하기

예제 2-7 표현문 태그로 연산 결과 출력하기

profile
Nil Desperandum <절대 절망하지 마라>

0개의 댓글