JSP - JSTL, EL태그

이정규 (가지마)·2023년 3월 18일
0

1.JSTL이란?

-JSP 표준 태그 라이브러리(여러 프로그램이 공통으로 사용하는 코드를 모아놓은 코드의 집합)의 약어.

-JSP에서 java코드가 들어갈때마다 매번 <%~~%>이 태그를 넣어 사용하면 가독성도 굉장히 떨어지고 사용하기가 불편해진다. 그래서 나온것이 JSTL라이브러리이다.

-JSTL은 회사마다 사용하는 명칭이 다르고 회사마다 호환성이 좋지 않기 때문에
특정회사의 태그타입을 사용해야한다.

특성회사의 태그타입을 사용하는것이 prefix이다.

<%@ taglib prefix="c" uri ="http://java.sun.com/jsp/jstl/core"%>

여기선 태그타입이 c이고 이것을 사용하기 위해서는 <c:forEach>처럼 사용해야한다.

1.JSTL Core태그

<c:set/>
<c:remove/> : 변수의 선언 및 제거

<c:out/> : 변수의 출력
<c:catch/> : 예외처리
<c:if/> : 조건문(else)는 없다.
<c:choose/>
<c:when/>
<c:otherwise/>: Switch문과 비슷.

<c:forEach/> : 반복문
<c:forTokens/> : 구분자로 분할하여 반복문.
<c:url/> : URL생성
<c:param/> : 파라미터추가.
<c:import/> : 페이지 첨부
<c:redirect/> : URL이동.

2.JSTL Formatting태그.

JSTL Formatting태그는 데이터의 포맷형태등을 정해주고 변경할때 사용하는 태그입니다.
JSTL Formatting을 사용하기위해선 JSP페이지 상단에 선언을 해주어야한다.

<%@taglib prefix="fmt" uri="http://java.sun.com/jspj/jstl/fmt"%>

<fmt:setLocale/> : Locale을 지정.
<fmt:requestEncoding/> : 요청 파라미터의 캐릭터 인코딩을 지정.

<fmt:bundle/> :사용할 번들을 지정.
<fmt:message/> : 지역에 알맞은 메시지를 출력
<fmt:setBundle/> : 리소스 번들을 읽어와 특정 변수에 저장

<fmt:fotmatNumber/> : 숫자를 포맷팅
<fmt:fotmatDate/> : Date객체를 포맷팅
<fmt:parseDate/> : 문자열로 표시된 날짜를 분석해서 Date객체로 변환
<fmt:parseNumber/> : 문자열로 표시된 날짜를 분석해서 숫자로 변환.
<fmt:setTimeZone/> : 시간대 정보를 특정 변수에 저장.
<fmt:timeZone/> : 시간대를 지정.

3.JSTL SQL 태그

JSTL로 DataBase를 이용해서 SQL을 처리하는 작업 등에서 사용된다.
JSTL SQL 태그를 사용하기 위해서는 JSP페이지 상단에 선언을 해주어야한다.

<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql"%>

<sql:setDataSource/> : 데이터베이스연결
<sql:query/>
<sql:update/>
<sql:param/>
<sql:dataParam/> : 쿼리
<sql:transaction/> : 트랜잭션

4.JSTL XML 테그

XML을 처리해주기 위한 출력,흐름제어 XML변환등에 사용.

<%@taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml"%>

<x:set/> : xml경로를 변수로 저장
<x:out> : xml내용을 출력
<x:if> : <c:if>와 동일한기능
<x.choose> <c:choose>와 동일한기능
<x:forEach> : <c:forEach>와 동일한기능.
<x:parse> : xml문서를 읽어서 파싱.
<x:transform> : xml과 xlt파일을 결합해서 새로운 문서를 생성.

5.JSTL Function 태그

Function태그는 문자열이나 컬렉션의 가공,변환,분석을 위해 사용되는 태그.
JSTL Function태그를 사용하기 위해서는 JSP페이지 상단에 선언을 해주어야함.

<%@taglib prefix="fn" uri="http://java/sun/com/jsp/jstl/functions" %>
profile
"꾸준함이 답이다."

0개의 댓글