Information Security
JSTL(JSP Standard Tag Library) 본문
JSTL(JSP Standard Tag Library) : 표준 태그 라이브러리
-JSP 페이지를 작성할 때 유용하게 사용할 수 있는 여러 가지 커스텀 액션과 함수가 포함되어 있는 라이브러리이다.
※라이브러리 : 여러 프로그램이 공통으로 사용하는 코드를 모아놓은 코드의 집합
-JSTL을 사용하면 스크립트릿 코드(<% %>)의 사용을 줄여 간결하고 이해가 쉬운 JSP 코드를 작성할 수 있다.
라이브러리 |
주요 기능 |
접두어 |
관련 URI |
코어 |
변수 지원, 흐름 제어, URL 처리 |
c |
|
XML |
XML 문서 처리 시 필요 기능 제공 |
x |
|
국제화 |
국제화, 다국어 지원, 숫자 및 날짜 형식 |
fmt |
|
데이터베이스 |
SQL |
sql |
|
함수 |
문자열 처리하는 함수 제공 |
fn |
-JSTL이 제공하는 5가지 종류의 태그이다.
-접두어는 JSP 페이지가 커스텀 태그를 호출할 때 사용한다.
-관련 URI는 JSTL이 제공하는 커스텀 태그를 구분해주는 식별자이다. 이 식별자를 이용하여 커스텀 태그 라이브러리를 선택할 수 있다.
-위의 태그 라이브러리를 사용하려면 JSP 페이지에 taglib 디렉티브를 추가해야 한다.
-prefix와 uri 애트리뷰트에 각각 접두어와 URI 식별자를 값으로 주어야 한다.
-http://search.maven.org/에서 jstl을 검색하고 1.2 버전의 jar 파일을 다운로드 받는다.
-다운로드 받은 파일을 WEB-INF/lib 디렉터리에 복사하면 JSP 페이지에서 JSTL 라이브러리를 사용할 수 있게 된다.
코어 태그
1. 변수 지원 태그
-JSTL이 지원하는 태그에서 사용 가능한 변수를 설정하기 위해 사용
<c:set> 태그 : EL 변수 선언
실행
<c:remove> 태그 : set 태그로 지정한 변수 삭제
2. 흐름 제어 태그
<c:if> 태그
-조건이 참이면 몸체 안의 내용이 실행되고, 거짓이면 실행되지 않는다.
-empty : 데이터의 존재 여부를 확인하는 단항 연산자
<c:choose> 태그 : 자바의 switch 문,
<c:when> 태그 : switch 문의 case 절,
<c:otherwise> 태그 : switch 문의 default 절과 비슷한 역할을 한다.
<c:forEach> 태그 : 자바의 for 문에 해당하는 기능 제공
-var : 몸체에서 사용할 EL 변수명
-begin : 시작 인덱스 값
-end : 끝 인덱스 값
-step: 인덱스 증분 값
실행
-items : Map, 배열 Collection이 올 수 있다.
-varStatus : 루프 정보를 담는 객체를 저장할 변수명을 값으로 갖는다.
index : 루프 실행에서 현재 인덱스
count : 루프 실행 횟수
실행
3. URL 처리 태그
<c:import> 태그 : URL을 사용하여 다른 자원의 결과를 삽입
<c:redirect> 태그 : 지정한 경로로 redirect
<c:url> 태그 : URL 재작성
4. 기타 태그
<c:catch> 태그 : 자바의 try 문과 비슷한 기능을 한다.
-try 블록에 해당하는 일만 하기 때문에 catch 블록에 해당하는 일은 별도로 코딩한다.
-e : 익셉션 객체가 저장되는 변수
-${e.message} : 익셉션 객체 e에 대해 getMessage 메서드 호출
실행
<c:out> 태그 : 데이터 출력시 사용
-value : 출력할 값
-escapeXml : 특수 문자를 변환할 지 여부
-true일 경우 변환되는 문자
실행
국제화 태그
<fmt:formatDate> 태그 : Date 객체 포맷팅
-출력할 날짜와 시각을 넘겨줘야 하므로 Date 객체를 생성한다.
-value : 포맷팅할 시간 값 지정
-dateStyle : 날짜 포맷팅 스타일 지정 (default, short, medium, long, full) 기본값: default
-timeStyle : 시간 포맷팅 스타일 지정 (default, short, medium, long, full) 기본값: default
-type : 무엇을 포맷팅할지 지정 (time, date, both) 기본값: date
실행
<fmt: formatNumber> 태그 : 숫자 포맷팅
-value : 포맷팅할 숫자 지정
-groupingUsed : 단위 구분 기호(,) 사용 여부 결정
-pattern : 숫자가 출력되는 양식 지정
-type : 어떤 양식으로 출력할지 지정(number: 숫자, percent: %, currency: 통화 형식) 기본값: number
실행
<fmt:setLocale> : 출력할 데이터의 포맷을 특정 지역에 맞게 설정할 때 사용
-value : 언어코드_국가코드 형식
실행
<fmt:timeZone> : 시간대 지정
-value : 특정 지역 이름 지정
실행
★세계시각 출력하기
실행
<fmt:setBundle> : 리소스 번들을 읽어와 특정 변수에 저장
-basename : 읽어올 리소스 번들의 이름
<fmt:message> : 지역에 알맞은 메시지 출력
-key : 읽어올 메시지의 키 값
-이 태그들을 사용하면 여러 언어로 기술된 웹 페이지를 생성할 수 있다.
-먼저 웹 페이지마다 다른 언어로 기술되어야 할 부분을 추출하여 파일로 만들어야 한다.
-[Help] -> [Eclipse Marketplace] -> Find : [properties editor] 검색
-[Install] 클릭 : Properties Editor가 설치됨
-리소스 번들 파일의 형태 : 번들이름_언어코드.properties
'JSP Web Programming' 카테고리의 다른 글
EL(Expression Language) (0) | 2017.06.14 |
---|---|
Login test (0) | 2017.05.25 |
Form check (0) | 2017.05.24 |
Bean 사용하기 (0) | 2017.05.22 |
Area test (0) | 2017.05.16 |