0927 JSP

김강산·2022년 9월 27일
0

JSP

목록 보기
2/14

스크립트 태그의 세 가지 종류에 대한 설명
❶ 선언문 태그
선언문 태그에 선언된 변수와 메소드는 JSP 페이지 임의의 위치에서 선언할 수 있으며, 스크립틀릿 태그보다 나중에 선언해도 스크립틀릿 태그에서 사용할 수 있습니다. 선언문 태그로 선언된 변수는 전역 변수로 사용되고, 선언문 태그로 선언된 메소드는 전역 변수처럼 전역 메소드로 사용됩니다.

❷ 스크립틀릿 태그
스크립틀릿 태그는 out 객체를 사용하지 않고도 쉽게 HTML 응답을 만들어낼 수 있습니다.
가장 일반적으로 사용되며 변수 또는 메소드 선언, 유효식 등 다수를 포함할 수 있습니다. 모든 텍스트, HTML 태그, 또는 JSP 요소는 스크립틀릿 태그 외부에 있어야 합니다.

❸ 표현문 태그
표현문 태그를 이용하여 선언문 태그 또는 스크립틀릿 태그에서 선언된 변수나 메소드의
반환 값을 외부로 출력할 수 있습니다. 표현문 태그는 스크립틀릿 태그에서 사용할 수 없으므로 이 경우에는 out.print( ) 메소드를 사용해야 합니다. 표현문 태그에 숫자, 문자, 불 등의 기본 데이터 타입과 자바 객체 타입도 사용 가능합니다. 그리고 표현문 태그에 작성된 모든 자바 코드의 값은 문자열로 변환되어 웹 브라우저에 출력됩니다.

contents

  1. 디렉티브 태그의 개요
  2. page 디렉티브 태그의 기능과 사용법
  3. taglib 디렉티브 태그의 기능과 사용법
  4. [웹 쇼핑몰] 한글 출력 및 페이지 모듈화하기

학습목표

  • 디렉티브 태그의 개념과 특징을 이해한다
  • 디리ㅔㄱ티브 태그 구성 요소의 사용법을 익힌다
  • 디렉티브 태그를 이용하여 웹 쇼핑몰 페이지에 한글을 출력하고 페이지를 모듈화합니다

디렉티브 태그

  • JSP 페이지를 어떻게 처리할 것인지를 설정하는 태그
  • JSP 페이지가 서블릿 프로그램에서 서블릿 클래스로 변환할 때
    * JSP 페이지와 관련된 정보를 JSP컨테이너에 지시하는 메시지

page : JSP 페이지에 대한 정보를 설정
taglib : JSP 페이지에서 사용할 태그 라이브러리를 설정

psge 디렉티브 태그

  • 현재 JSP 페이지에 대한 정보를 설정하는 태그


page 디렉티브 태그에 language 속성에 java벨류

page 디렉티브 태그의 기능

pageEncoding 속성

  • 현재JSP 페이지의 문자 인코딩 유형을 설정하는 데 사용

import 속성

  • 현재 JSP 페이지에서 사용할 자바 클래스를 설정하는 데 사용

session 속성

  • 현재 JSP 페이지의 HTTP 세션 사용 여부를 설정하는 데 사용
  • 기본 값 : 세션을 자동으로 사용하는 true
    * 만약 session 속성 값을 false로 설정할 경우
    - 해당 JSP페이지에서 내장 객체인 session 변수를 사용할 수 없다는 의미이므로
    해당 페이지에 대해 세션을 유지 관리할 수 없음

JSP 내장객체

Session 객체 SessionScope(영역)
request 객체 requestScope(영역)
pageContext 객체 pageScope(영역)
application 객체 applicationScope(영역)

errorPage 속성

taglib 디렉티브 태그

  • 현재 JSP 페이지에 표현 언어, JSTL, 사용자 정의 태그(custom tag) 등 태그 라이브러리를 설정하는 태그

page 태그 : contentType
taglib : text/html charset=utf-8
isErrorPage="false"
errorPage="JSP경로"

EL ${변수}
JSTL <c:if
<c:forEach

프레임워크 : 1. 디자인 패턴
(모델하우스) 2. 라이브러리집합

라이브러리 : 기능의 집합체
(모듈)

JSTL : JSP에서 주로 많이 사용하는 태그 집합
JSP
Standard
Tag
Library
JSTL? Jsp Standard Tag Library

  • jsp 페이지에서 스크립트 요소로 인해 생기는 코드의 복잡함을
    해결하기 위한 일종의 사용자 정의 태그 표준
  • jsp 페이지의 로직을 담당하는 부분인 if, for, while, DB처리 등과 관려된
    코드를 JSTL로 대체하여 코드를 깔끔하고 가독성 좋게 할 수 있음

1) Core 태그(***)

  • 변수 선언, 삭제 등 변수와 고나련된 작업
  • if문, for문과 같은 제어 기능
  • URL 처리로 페이지 이동

2) Formatting 태그(**)

  • 숫자/날짜/시간 등을 형식화하는 기능

3) Sql 태그

  • 안씀
    4) Function 태그(*)

  • 문자열을 처리하는 함수 제공. 문자열 추출. 문자열 길이구하기

엄청 중요

스크립트로도 사용 가능하다

정리

디렉티브 태그
JSP를 어떻게 처리할 것인지를 설정하는 태그

디렉티브 태그 종류
page, include, taglib

page디렉티브 태그
JSP 웹 페이지의 최상단에 선언하는 것을 권장하며 속성은 다음과 같다
속성 : language, contentType, pageEncoding, inport, session, buffer, autoFlush, isThreadSafe, info, errorPage, isErrorPage, isELlgnored, isScriptingEnabled

디렉티브 태그
JSP페이지 어디에서든 선언 가능
코드를 재사용하고 중복된 코드가 줄어들어 유지보수 측면에서 매우 유용

taglib디렉티브 태그
taglib 디렉티브 태그를 사용하기 위해서는 prifix속성과 url 속성을 지정
uri속성은 사용자가 정의한 태그의 설정 정보를 가진 경로 주소를 설정하고, prifix 속성은 uri에서 설정한 사용자가 정의한 태그를 식별하기 위한 고유 이름을 설정

JSTL 이란
일반적으로 알고있는 JSTL이란 JSSTL + EL의 조합을 말한다.

JSTL
JSTL의 정식 명칭은 자바서버 페이지 표준 태그 라이브러리이고 줄여서 JSTL이라 부른다.

JSTL은 JavaEE 기반의 웹 애플리케이션 개발 플랫폼을 위한 컴포넌트 모음이다. JSTL은 XML 데이터 처리와 조건문, 반복문, 국제화와 지역화와 같은 일을 처리하기 위한 JSP태그 라이브러릴를 추가하여 JSP사양을 확장했다

JSTL은 JSP 페이지 내에서 자바 코드를 바로 사용하지 않고 로직을 내장하는 효율적인 방법을 제공한다. 표준화된 태그 셋을 사용하여 자바 코드가 들락거리는 것보다 더 코드의 유지보수와 응용 소프트웨어 코드와 사용자 인터페이스 간의 관심사의 분리로 이어지게 한다.

JSTL은 라이브러리이기 때문에 사용하기전에 core를 header에 추가해주어야 한다.

JSTL core의 태그

EL의 사용법

EL의 내장 객체

EL의 연산자 종류 및 표현법

스크립틀릿 vs JSTL
JSTL + EL의 조합으로 우리는 스크립틀릿을 사용할 때보다 훨씬 간결하고 가독성 좋은 HTML코드를 완성할 수 있다
스크립틀릿과 HTML태그들을 함께 사용하지 않아야하는 주된 이유는 가독성 문제다. JSTL을 사용하면 개발자는 HTML과 태그로만 구성된 일관된 소스를 볼 수 있다

퍼블리셔, 프론트 개발자, 서버 개발자가 공동으로 작업을 한다고 생각해보자. 스크립틀릿 코드는 퍼블리셔나 디자이너가 알아보기 힘들수 있다

0개의 댓글