태그
#JAVA
#JSP
#JSTL
#LIBRARY
JSP 표준 태그 라이브러리(JSTL - Formatting, Xml)
2021년 12월 15일 03:01

이 글은 골든래빗 출판사로부터 책을 제공받아 작성했습니다.
http://www.yes24.com/Product/Goods/105016218
분류 | 태그명 & 기능 |
---|---|
숫자 포맷 | - formatNumber : 숫자 포맷 설정 - parseNumber : 문자열을 숫자 포맷으로 변환 |
날짜 포맷 | - formatDate : 날짜, 시간 포맷 설정 - parseDate : 문자열을 날짜 포맷으로 변환 |
타임존 설정 | - setTimeZone : 시간대 설정 정보를 변수에 저장 - timeZone : 시간대를 설정 |
로케일 설정 | - setLocale : 통화 기호, 시간대를 설정한 지역에 맞게 표시 - requestEncoding : 요청 매개변수의 문자셋 설정 |
<fmt:formatNumber>
태그의 속성
- value - 출력할 숫자 설정
- type - 출력 양식 설정 (percent, currency, number 등 지원)
- var - 출력할 숫자 변수 지정
- groupingUsed - 세 자리마다 콤마 출력 여부 결정 (기본값 true)
- pattern - 출력할 숫자 양식을 패턴으로 지정
- scope - 변수를 저장할 영역 지정
<fmt:parseNumber>
태그의 속성
- value - 변환할 문자열 설정
- type - 문자열 타입 설정 (기본값 number)
- var - 출력할 값을 변수에 저장
- parttern - 문자열 양식을 패턴으로 지정
- scope - 변수를 저장할 영역 지정
- integerOnly - 정수 부분 표시 여부 (기본값 false)
<fmt:formatDate>
태그의 속성
- value - 출력할 값 설정
- type - 출력 시 date, time, both 세 가지 중 선택
- var - 출력할 숫자를 변수에 저장
- dateStyle - 날짜 스타일 지정 (default, short, medium, long, full)
- timeStyle - 시간 스타일 지정 (default, short, medium, long, full)
- pattern - 출력할 날짜 및 시간 양식을 패턴으로 지정
- scope - 변수를 저장할 영역 지정
개인적으로 작성한 Formatting 예제
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JSTL fmt 라이브러리</title>
</head>
<body>
<c:set var="number" value="12345678" />
<h1>숫자 출력</h1>
<fmt:formatNumber value="${number}" />
<h1>Type 속성</h1>
숫자 : <fmt:formatNumber value="${number}" type="number"/><br>
숫자 3자리마다 쉼표 제거 : <fmt:formatNumber value="${number}" type="number" groupingUsed="false"/><br>
<%-- percent 100% => 1 --%>
100% : <fmt:formatNumber value="1" type="percent" /> <br>
40% : <fmt:formatNumber value="0.4" type="percent" /> <br>
통화 (원) : <fmt:formatNumber value="${number}" type="currency"/> <br>
통화 (달러) : <fmt:formatNumber value="${number}" type="currency" currencySymbol="$"/> <br>
<h1>var로 변수에 저장</h1>
<fmt:formatNumber value="${number}" type="currency" currencySymbol="$" var="doller" />
달러 EL로 출력 : ${doller}
<h1>pattern</h1>
3.14 <fmt:formatNumber value="3.14" /> <br>
3.14 (0.0000) <fmt:formatNumber value="3.14" pattern="0.0000" /> <br>
3.14 (#.####) <fmt:formatNumber value="3.14" pattern="#.####" /> <br>
3.141592 (#.####) <fmt:formatNumber value="3.141592" pattern="#.####" /> <br>
<hr>
<h1>Date 객체를 String 형태로 출력 => fmt:formatDate</h1>
<fmt:formatDate value="${today}" var="pattern1" pattern="yyyy년 MM월 dd일 HH시 mm분 ss초" />
pattern1 : ${pattern1} <br>
<fmt:formatDate value="${today}" var="pattern2" pattern="yyyy/MM/dd HH:mm:ss" />
pattern2 : ${pattern2} <br>
<h1>String을 Date 객체로 변환 => fmt:parseDate</h1>
<fmt:parseDate value="${pattern2}" pattern="yyyy/MM/dd HH:mm:ss" var="date2" />
Date 객체 : ${date2}
</body>
</html>
xml 태그의 종류
out - select 속성에 지정한 XPath 표현식의 결과 출력
parse - XML을 파싱할 때 사용
forEach - select 속성에 지정한 반복되는 노드 파싱
if - select 속성에 지정한 XPath 표현식 값을 하나의 조건으로 결정
choose - select 속성에 지정한 XPath 표현식 값을 다중 조건으로 결정 (하위에 when, otherwise 사용)
= XML 문서를 처리하기 위한 태그들로 XML 파싱, 출력, 흐름 제어 등의 기능 제공