형식화 = formatting
jstl core 라이브러리처럼 사용가능한 formatting라이브러리
시작 전 항상 라이브러리부터 추가
1 2 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
시간 스타일별 출력 1 2 3 4 5 <fmt:formatDate value ="${date }" type ="time" /> <br > <fmt:formatDate value ="${date }" timeStyle ="full" type ="time" /> <br > <fmt:formatDate value ="${date }" timeStyle ="long" type ="time" /> <br > <fmt:formatDate value ="${date }" timeStyle ="medium" type ="time" /> <br > <fmt:formatDate value ="${date }" timeStyle ="short" type ="time" /> <br >
가장 많이 사용하는 날짜 시간 포맷으로 출력 - 소문자 mm : 시간의 분을 나타남. 헷갈리지 말것.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 <fmt:formatDate value ="${date }" type ="both" dateStyle ="long" timeStyle ="long" /> <br > //2. 날짜 정보를 yyyy/MM/dd(E) 패턴으로 출력 : //소문자 mm : 시간의 분을 나타남. 헷갈리지말것 <fmt:formatDate value ="${date }" pattern ="yyyy/MM/dd/(E)" /> <br > //3. yy-MM-dd(E) 패턴으로 출력 : <fmt:formatDate value ="${date }" pattern ="yy-MM-dd(E)" /> <br > //4. 시간정보를 오전오후로 출력 <fmt:formatDate value ="${date }" pattern ="(a)hh:mm:ss" /> <br > //출력값 2020년 8월 12일 (수) 오후 5시 03분 59초 2020/08/12/(수) 20-08-12(수) (오후)05:03:59
나라별 로컬시간대와 로컬화폐단위를 출력 예시
날짜정보를 포맷팅해서 사용하기 위한 변수생성
core라이브러리와 formatting 라이브러리 추가
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 <%@ taglib prefix ="c" uri ="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix ="fmt" uri ="http://java.sun.com/jsp/jstl/fmt" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd" > <html > <head > <meta http-equiv ="Content-Type" content ="text/html; charset=UTF-8" > <title > Insert title here</title > </head > <body > <c:set var ="date" value ="<%=new Date() %>" /> <c:out value ="${date }" /> <hr > <fmt:formatDate value ="${date }" /> <hr > <h2 > 우리나라</h2 > <fmt:setLocale value ="ko_kr" /> 금액 : <fmt:formatNumber value ="100000000000" type ="currency" /> <br > 날짜 : <fmt:formatDate value ="${date }" dateStyle ="full" /> <h2 > 미국</h2 > <fmt:setLocale value ="en_us" /> 금액 : <fmt:formatNumber value ="100000000000" type ="currency" /> <br > 날짜 : <fmt:formatDate value ="${date }" dateStyle ="full" /> <h2 > 일본</h2 > <fmt:setLocale value ="ja_jp" /> 금액 : <fmt:formatNumber value ="100000000000" type ="currency" /> <br > 날짜 : <fmt:formatDate value ="${date }" dateStyle ="full" /> //출력값 Wed Aug 12 16:09:42 KST 2020 2020. 8. 12 우리나라 금액 : ₩100,000,000,000 날짜 : 2020년 8월 12일 수요일 미국 금액 : $100,000,000,000.00 날짜 : Wednesday, August 12, 2020 일본 금액 : ¥100,000,000,000 날짜 : 2020年8月12日
숫자데이터를 원하는 형태로 출력가능하게 하는 formatting라이브러리
시작 전 항상 라이브러리부터 추가1 2 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
숫자를 3자리마다 콤마를 찍고싶다면
1 2 3 4 5 6 7 8 <fmt:formatNumber value ="100000000" /> <br > <fmt:formatNumber value ="100000000" groupingUsed ="true" /> <br > <fmt:formatNumber value ="100000000" groupingUsed ="false" /> <br > //출력값 100,000,000 100,000,000 100000000
소수점자리 표현
<fmt:formatNumber value=”” pattern=””>
pattern속성 : 숫자는 #으로, 자리수는 .으로 표시
1 2 3 4 5 6 7 8 9 10 11 12 13 <h2 > 3.1234643 소수점 두번째 자리 까지만 표현 </h2 > 소수점 처리 : <fmt:formatNumber value ="3.1234643" /> (기본값) <br > 소수점 처리 : <fmt:formatNumber value ="3.1234643" pattern ="#.##" /> <br > 소수점 처리 : <fmt:formatNumber value ="3.1234643" pattern ="#.#######" /> <br > 소수점 처리 : <fmt:formatNumber value ="3.1234643" pattern ="#.##########" /> <br > 소수점 처리 : <fmt:formatNumber value ="3.1234643" pattern ="####.#" /> <br > //출력값 소수점 처리 : 3.123 (기본값) 소수점 처리 : 3.12 소수점 처리 : 3.1234643 소수점 처리 : 3.1234643 소수점 처리 : 3.1
빈자리수는 0을 채워서 표현
<fmt:formatNumber value=”” pattern=”##.00”>
1 2 3 4 5 6 7 8 9 10 11 12 <fmt:formatNumber value ="30.1" pattern ="##.##" /> <br > <fmt:formatNumber value ="30.1" pattern ="##.00" /> <br > <fmt:formatNumber value ="30.1" pattern ="00.00" /> <br > <fmt:formatNumber value ="30.1" pattern ="00.77" /> <br > <fmt:formatNumber value ="30.1" pattern ="#00.00" /> <br > //출력값 30.1 30.10 30.10 30.77 30.10
퍼센트 1 2 3 4 5 6 백분율 : <fmt:formatNumber value ="0.55" /> <br > 백분율 : <fmt:formatNumber value ="0.55" type ="percent" /> <br > //출력값 백분율 : 0.55 백분율 : 55%
통화량
currencySymbol속성 : 원하는 문자를 넣어서 통화표현도 할 수 있음
1 2 3 4 5 6 7 8 9 10 통화량 : <fmt:formatNumber value ="2000000000" /> <br > 통화량 : <fmt:formatNumber value ="2000000000" type ="currency" /> <br > 통화량 : <fmt:formatNumber value ="2000000000" type ="currency" currencySymbol ="$" /> <br > 통화량 : <fmt:formatNumber value ="2000000000" type ="currency" currencySymbol ="*" /> <br > //출력값 통화량 : 2,000,000,000 통화량 : ₩2,000,000,000 통화량 : $2,000,000,000 통화량 : *2,000,000,000