JSTL에 대하여
JAVA를 배우는 분들은 자주 쓰는 JSTL에 대해서 알아봅시다. JSTL은 "JSP STANDARD TAG LIBRARY"의 약자입니다.
보통 JSP파일에서 JAVA값을 출력하려면 아래와 같이 코드를 추가합니다.
<%=kgon %>
하지만 화면에서도 여러 작업을 하기 위해서는 JSTL을 사용합니다.
많이 사용하는 JSTL위주로 설명하도록 하겠습니다.
JSTL은 먼저 해당 LIBRARY을 JSP파일 상단에 선언해야합니다.
선언하지 않으면 해당 JSTL 문법은 실행되지 않습니다.
*코어
먼저 아래 문구를 JSP파일상단에 추가해주세요.
(상단의 문구를 JSP파일 상단에 추가하지 않으면 JSTL문법은 실행되지 않습니다. )
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
1. <c:set />
- 변수값을 선언할 때 씁니다.
ex) <c:set var="kgon" value="케이곤"/>
2. <c:out />
- 변수를 출력할 때 씁니다.
ex) <c:out var="kgon"/>
3. <c:if></c:if>
- 조건문에 사용합니다.
- == 는 eq를 쓰며 !=는 ne를 씁니다.
- 값이 없는 경우 empty를 씁니다.
- 조건이 TRUE이면 <c:if> ~ </c:if>사이를 실행합니다.
ex) <c:if test="${kgon eq '케이곤'}><c:out value="true"/></c:if>
ex) <c:if test="${kgon ne '케이곤'}><c:out value="true"/></c:if>
ex) <c:if test="${empty kgon}><c:out value="true"/></c:if>
4. <c:choose></c:choose>
- switch문이랑 비슷합니다. [조건문]
- 여러 조건들중에 만족하는 조건을 실행시킵니다.
(<c:when>사용합니다.)
- 여러 조건 모두 해당사항이 없는 경우 <c:otherwise>를 실행시킵니다.
ex)
<c:choose>
<c:when test="${kgon eq '케이곤'><c:out value="케이곤"></c:when>
<c:when test="${kgon eq '제이곤'><c:out value="제이곤"></c:when>
<c:when test="${kgon eq '아이곤'><c:out value="아이곤"></c:when>
<c:oherwise>
<c:out value="기타ETC">
<c:oherwise>
</c:choose>
5. <c:forEach></c:forEach>
- for문이랑 비슷합니다. [반복문]
- 숫자 증가일 경우 var , begin , end , step 속성을 사용합니다.
(begin : 초기값 , end : 종료값, step : 증가값 )
- List, Map일 경우 var , items, varStatus 속성을 사용합니다
(items : List , Map변수 , varStatus : 해당 List 의 순서등 값을 알수있다)
ex) <c:forEach var="kgon" begin="1" end="10" step="2"><c:out value="${kgon}"/></c:forEach>
<c:forEach var="kgon" items="kgons" varStatus="status"><c:out var="${status.index}"/></c:forEach>
* 함수
먼저 아래 문구를 JSP파일상단에 추가해주세요.
(상단의 문구를 JSP파일 상단에 추가하지 않으면 JSTL문법은 실행되지 않습니다. )
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
자주쓰는 함수는 다음과 같습니다.
1. fn:substring(kgon, 1, 5)
- kgon(문자열변수)의 1번째에서 5번째까지 문자를 리턴한다.
ex) <c:set var="kgon" value="abcdef"/>
<c:out value="${fn:substring(kgon,1,5)}"/>
==> bcdef
2. fn:contains(kgon, kgonSub)
- kgon(문자열변수)에 kgonSub(문자열변수)가 포함되어 있는지 확인한다.
- 포함되어 있으면 true 없으면 false값을 리턴한다.
ex) <c:out value="${fn:contains("kgon" , "k")}/>
==> true
3. fn:indexOf(kgon,kgonSub)
- kgon(문자열변수)에서 kgonSub(문자열변수)의 처음으로 나타나는 위치를 리턴한다.
- 시작점은 0부터 시작되며 없을 경우 -1이 리턴된다.
ex) <c:out value="${fn:indexOf("kgon","g")}"/>
==> 1
4. fn:length(kgon)
- kgon이 배열이나 List이면 해당 개수를 , 문자열이면 문자의 갯수를 리턴한다.
ex) <c:out value="${fn:length("kgon")}"/>
==> 4
5. fn:replace(kgon, kgonBefore, kgonAfter)
- kgon(문자열변수)내에 kgonBefore(문자열변수)를 kgonAfter(문자열변수)로 모두 바꾸어서 리턴한다.
ex) <c:out value="${fn:replace("kgonkgon","k","j")}"/>
==> jgonjgon
6. fn:split(kgon, kgonSub)
- kgon(문자열변수)내에서 kgonSub(문자열변수)에 따라 나누어서 배열로 구성하여 리턴한다.
ex) ${fn:split("1,2,3,4,5",",");
==> [1,2,3,4,5]
7. fn:toLowerCase(kgon)
- kgon(문자열변수)를 모두 소문자로 바꾸어 리턴한다.
ex) ${fn:toLowerCase("KGON");
==> kgon
8. fn:toUpperCase(kgon)
- kgon(문자열변수)를 모두 대문자로 바꾸어 리턴한다.
ex) ${fn:toLowerCase("kgon");
==> KGON
9. fn:trim(kgon)
- kgon(문자열변수)의 앞뒤 공백을 모두 제거하여 리턴한다.
ex) ${fn:toLowerCase(" kgon ");
==> kgon
조심할점이 있습니다.
라이브러리가 없는 경우 JSTL이 실행되지 않습니다.
JSTL문법이 실행이 안될 경우 라이브러리 추가여부를 확인해주세요
'컴퓨터 > 컴퓨터 ETC' 카테고리의 다른 글
JQUERY (제이쿼리) - select , radio, checkbox 제어 (0) | 2017.07.12 |
---|---|
JQUERY (제이쿼리) 이정도는 알아두자 [기초, 기본 함수 정리] (0) | 2017.07.11 |
JQUERY (제이쿼리) 빈도높은 명령어 (0) | 2017.05.26 |
블로그 작성에 도움되는 HTML 태그 (2) (0) | 2017.05.25 |
블로그 작성에 도움되는 HTML 태그 (1) (0) | 2017.05.24 |