카테고리 없음
[JSP/JSTL] JSP 문서에서 출력 방식을 도와주는 fmt 태그들
newlec
2019. 12. 8. 02:40
반응형
<원문:http://www.notepubs.com/note/107>
JSP 페이지를 구현하다보면 다음과 같은 문제를 만날 수 있다.
1. 내가 원하는 출력 방식은 다음처럼 대시(-)로 구분하고 일자까지만 출력하고 싶지만
2019-12-25
데이터베이스에서 날짜 가져와서 출력했더니 다음처럼 출력되는 문제
2019/12/25 12:23:112345
2. 내가 원하는 출력 방식은 다음처럼 천 단위로 쉼표(,)가 포함되는 것이지만
2,341,525
조회수를 출력했더니 다음처럼 출력되는 문제
2341525
이런 문제를 해결하기 위한 코드를, 어떤 이는 컨트롤러(MVC로 만든다고 가정함)에서 작성하기도 하는데, 사실 출력 형식은 View 페이지(JSP 페이지)에서 작성하는 것이 좀 더 바람직하다고 할 수 있다.
물론 View에서는 자바 코드를 사용하는 것이 바람직하지 않기 때문에, 그런 목적에 부합되는 도구로써 JSTL의 Formating 모듈을 사용한다.

[그림 : JSTL 모듈들]
구글 광고가 추가되었습니다.
포맷 모듈을 사용하는 방법은 우선 JSP에 다음과 같은 지시자를 설정하는 것으로 부터 시작한다.
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
[코드 : jstl/fmt 태그 집합을 사용하기 위한 페이지 지시자]
위와 같이 지시자를 설정했다면 이제부터는 다음과 같은 태그들을 사용할 수 있다.
구분 | 태그명 | 설명 |
숫자/날짜 | fmt:formatNumber | 숫자의 출력 형식 설정 |
fmt:formatDate | 날짜의 출력 형식 설정 | |
fmt:parseNumber | 숫자 형식의 문자열을 숫자로 변환 | |
fmt:parseDate | 날짜 형식의 문자열을 날짜로 변환 | |
fmt:timeZone | 타임존 블록을 설정 | |
fmt:setTimeZone | 타임존을 설정한다. | |
지역화/ 메시지 |
fmt:message | 지역화된 메시지를 출력 |
fmt:bundle | 메시지 리소스 블록을 설정 | |
fmt:setBundle | 메시지 리소스를 설정 | |
fmt:setLocale | 지역을 설정 | |
fmt:requestEncoding | 전송할 데이터의 인코딩 설정 |
[표: 출력 포맷을 지원하는 태그들]
위의 태그들은 사용하는 방법은 생각보다 쉽지만 의외로 많은 옵션들도 함께 가지고 있기 때문에 지면 관계상 다음 글을 통해서 하나씩 개별적으로 알아 보는 것이 바람직해 보인다.
구글 광고가 추가되었습니다.
다음 노트의 내용은 fmt:formatNumber 태그가 될 예정이다.
반응형