본문 바로가기
수업(국비지원)/JSP

[JSP] EL(표현식),JSTL - JSTL 형식화 태그 fmt (formatNumber, formatDate, pattern)

by byeolsub 2023. 4. 19.

 📌 ftm 태그 - 형식화 태그

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%-- /jsp3/src/main/webapp/jstl/lstlfmt1.jsp --%>   
<%@ 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>형식화 태그 : 숫자,날짜를 형식화된 문자열로 출력</title>
</head>
<body>
<h3>숫자관련 형식 지정</h3>
<%-- type="currency" 해당 지역의 화폐단위 --%>
<fmt:setLocale value="ko_KR"/> <%--해당 지역 설정 --%>
<fmt:formatNumber value="500000" type="currency" currencySymbol="₩"/><br><%-- ㄹ 한자 --%>
<fmt:formatNumber value="0.15" type="percent" /><br>
<fmt:formatNumber value="50000.345" pattern="###,###.00" /><br>
<fmt:formatNumber value="50000.341" pattern="000,000.00" /><br><%-- 자리수 맞춰서 안맞으면 앞자리를 0으로 채운다. --%>
<h3>날짜 관련 형식 지정</h3>
<c:set var="today" value="<%=new Date() %>"/>
<fmt:formatDate value="${today}" pattern="yyyy년 MM월 dd일 HH:mm:ss a E"/><br>
</body>
</html>

 

 


📌 ftm 태그 예제

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%-- /jsp3/src/main/webapp/jstl/lstlfmt2.jsp --%> 
<%@ 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>fmt 태그 예제</title>
</head>
<body>
<h3>parseNumber : Format 된 숫자를 일반적인 숫자로 변경</h3>
<fmt:parseNumber value="20,000" var="num1" pattern="##,###"/>
<fmt:parseNumber value="10,000" var="num2" pattern="##,###"/>
합 : ${num1} + ${num2} = ${num1+num2}<br>
<hr>
<h3>20,000 + 10,000 = 30,000 형식으로 출력하기</h3>
<fmt:formatNumber value="${num1}" pattern="##,###"/> +
<fmt:formatNumber value="${num2}" pattern="##,###"/> =
<fmt:formatNumber value="${num1+num2}" pattern="##,###"/><br>

<fmt:formatNumber value="${num1}" pattern="##,###" var="snum1"/>
<fmt:formatNumber value="${num2}" pattern="##,###" var="snum2"/>
<fmt:formatNumber value="${num1+num2}" pattern="##,###" var="snum3"/><br>
${snum1}+${snum2}=${snum3}<br>

<h3>parseDate : Format 된 날짜(문자열로 포멧된 날짜)를 일반적인 날짜로 변경</h3>
<fmt:parseDate value="2022-12-25 12:00:00" pattern="yyyy-MM-dd HH:mm:ss" var="day"/>
${day} <br>
<h3>2022-12-25 요일 출력하기</h3>
<fmt:formatDate value="${day}" pattern="yyyy-MM-dd E요일" />
</body>
</html>