2010. 9. 1. 11:03ㆍ라이브러리/Jstl
<?xml version="1.0" encoding="EUC-KR" ?>
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@page import="java.util.Date"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR" />
<title>숫자 포맷에 관련된 태그에 대해서 알아봅니다.</title>
</head>
<body>
<%--
formatNumber 태그
value : 포맷에 맞춰 출력될 숫자
type : 어떤 포맷으로 출력할 지 결정.. number 포맷일 때 숫자, percent 일 경우, currency 일 경우엔
통화 형식이 됨.
groupingUsed : ,(콤마) 와 같이 수치를 구분할 때 기호를 사용할 지 여부 결정 속성. true 일 경우엔
사용되며, false 일 경우 미사용됨.. 디폴트 true
currencyCode : 통화 코드 지정. 표준 코드집이 있으며 한국은 KRW 임. -- 조건 type 속성이 currency 일
때만 적용됨.
currencySymbol : 통화 기호 설정 속성.. 당근 type 이 currency 일때만 사용 가능.
var : 변수명
scope : 말안하겠음.
pattern : 직접 숫자가 출력되는 양식 지정함. java.text.DecimalFormat 클래스에 정의되어진 패턴을
따름..
--%>
<h2>fmt 의 number 태그를 이용한 숫자 포맷팅 예제.</h2>
<c:set var="price" value="10000" />
<fmt:formatNumber value="${price }" type="number" var="numberType" />
통화로 표현 시 : <fmt:formatNumber type="currency" currencySymbol="₩"
value="${price }" /><br />
퍼센트로 표현 시 : <fmt:formatNumber value="${price }" type="percent"
groupingUsed="false" /><br />
일반 숫자로 표현 시 : ${numberType }
<h2>formatDate 에 대해서 알아봅니다.<br />
<%--
formatDate 태그 : 시간과 날짜 표시 형식을 특정 포맷이나 패턴으로 설정하는 태그입니다.
속성들:::
value="포맷될 데이터"
type="포맷팅할 타입 지정.. date인 경우 날짜만, time인경우 시간만,
both인 경우엔 모두를 포맷합니다."
dateStyle="날짜의 출력 스타일 지정..DateFormat 클래스의 full, long, medium, short 등이
정의되어 있음.."
timeStyle="시간의 출력 스타일 지정.. DateFormat 클래스에 정의된 스타일 사용함."
pattern="직접 출력 스타일 지정..SimpleDateFormat 에 지정된 패턴 이용함"
var="설명 불필요"
scope="알아서 잘"
timeZone="특정 나라의 시간대로 시간을 세팅함.. setTimeZone 속성에 TimeZone 객체 명시함.."
--%>
<c:set var="now" value="<%= new Date() %>" />
<fmt:formatDate value="${now }" type="date" dateStyle="full" /><br />
<fmt:formatDate value="${now }" type="date" dateStyle="short" /><br />
<fmt:formatDate value="${now }" type="time" /><br />
<fmt:formatDate value="${now }" type="both" dateStyle="full"
timeStyle="full" /><br />
<fmt:formatDate value="${now }" pattern="z a h:mm" /><br />
<!-- 이번엔 특정 시간대로 타임존 세팅해서 포맷팅 출력해봅니다. -->
<fmt:formatDate value="${now }" type="both" dateStyle="full" timeStyle="full" /><br />
<fmt:timeZone value="Asia/Kamchatka">
<fmt:formatDate value="${now }" type="both" dateStyle="full" timeStyle="full" /><br />
</fmt:timeZone>
</h2>
</body>
</html>
====================================================================================================================================
1. 숫자 포맷 변환
라이브러리로 아래와 같이 추가
<%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
숫자1 : <fmt:formatNumber value="123456789" type="number"/><br>
숫자2 : <fmt:formatNumber value="1000" type="currency" currencySymbol="₩"/><br>
숫자3 : <fmt:formatNumber value="0.3" type="percent"/><br>
숫자4 : <fmt:formatNumber value="12345.678" pattern=".00"/><br>
<결과값>
숫자1 : 123,456,789 <- 기본 천단위 끊어서 표현
숫자2 : ₩ 1,000.00 <- 원표시 붙이고 (,)붙이고 소수점 2개 까지 표현
숫자3 : 30% <- %로 표현
숫자4 : 12345.68 <- 설정 소수점에서 반올림으로 표현
2. 날짜 포맷 변환
라이브러리로 아래와 같이 추가
<fmt:formatDate value="${board.registDate}" pattern="yyyy-MM-dd"/>
'라이브러리 > Jstl' 카테고리의 다른 글
[JSTL] Core Library (0) | 2010.07.05 |
---|---|
[JSTL] Core Library (일반태그편) (0) | 2010.07.05 |
[JSTL] 기초설명 및 세팅 (0) | 2010.07.05 |