표준 태그 라이브러리
프로그래밍 언어를 JSP에서 html tag형태로 작성하게 해줌.
● 태그 종류
라이브러리 | 기능 | 접두어 | URI |
Core | 일반적인 프로그래밍에서 사용되는 기능 (변수, 흐름제어) |
c | http://java.sun.com/jsp/jstl/core |
Functions | String, 컬렉션 가공 및 조작 | fn | http://java.sun.com/jsp/jstl/functions |
Formatting(국제화) | 날짜,시간,숫자 텍스트 형식 및 표시 | fmt | http://java.sun.com/jsp/jstl/fmt |
XML | XML 문서 생성 및 조작 | x | http://java.sun.com/jsp/jstl/xml |
SQL | RDBMS와 상호작용 | sql | http://java.sun.com/jsp/jstl/sql |
① Core
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
기능분류 | 태그 | 설명 |
변수 지원 | set | 4개 영역에 변수선언 |
remove | 4개 영역에 선언된 변수제거 | |
흐름 제어 | if (else 존재 X) | test=조건, 조건이 참일때 실행 |
choose | choose-when-otherwise (=switch-case-default) | |
forEach | 배열이나 컬렉션 요소 사용 | |
forTokens | StringTokenizer 클래스와 동일 | |
기타 태그 | catch | 예외처리 |
out | 출력 (= <%= %>) |
- set : scope의 기본값은 page
<c:set var="v" value="노란색" scope="page" /> <!-- pageContext.setAttribute("v", "노란색") -->
- forEach
<c:forEach var="변수명" items="배열 or 컬렉션" begin="시작번호" step="증가치" end="끝번호">
<c:set var="arr" value="<%=array%>" />
<c:forEach var="i" items="${arr}" begin="0" step="1" end="3">
${i}<br>
</c:forEach>
- forTokens : 문자열을 자름
<c:forTokens var="변수명" items="문자열" delims="자를 기준이 될 delimeters">
<c:set var="s" value="<%=str%>" />
<c:forTokens var="st" items="${s}" delims=", ;">
${st}<br>
</c:forTokens>
② formatting
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
-formatNumber
<fmt:formatNumber value="값" type="타입(number, percent, currency, ...)"/>
-parseNumber
<fmt:parseNumber var="변수명" integerOnly="true" value="값" />
<c:set var="num" value="123456789" />
숫자 : <fmt:formatNumber value="${num}" type="number"/><br>
퍼센트 : <fmt:formatNumber value="${num}" type="percent" groupingUsed="true"/><br>
달러 : <fmt:formatNumber value="${num}" type="currency" currencySymbol="$"/><br>
패턴 : <fmt:formatNumber value="${num}" pattern="0.0000" groupingUsed="false"/><br>
<fmt:parseNumber var="i" integerOnly="true" value="123.456" />
실수를 제외한 정수 : <c:out value="${i }" />
③ functions
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<c:set var="str" value="JSPStudy :: the whole new world!!" />
str : <b>${str}</b><br>
length : <b>${fn:length(str)}</b><br>
substring : <b>${fn:substring(str, 0, 8)}</b><br>
substringAfter : <b>${fn:substringAfter(str, "JSPStudy")}</b><br>
substringBefore : <b>${fn:substringBefore(str, "the")}</b><br>
toUpperCase : <b>${fn:toUpperCase(str)}</b><br>
tolowerCase : <b>${fn:toLowerCase(str)}</b><br>
replace : <b>${fn:replace(str, "JSP", "Android")}</b><br>
indexOf : <b>${fn:indexOf(str, "the")}</b><br>
startWith : <b>${fn:startsWith(str, "JSPStudy")}</b><br>
endWith : <b>${fn:endsWith(str, "JSPStudy")}</b><br>
contains : <b>${fn:contains(str, "jspstudy")}</b><br>
containsIgnoreCase : <b>${fn:containsIgnoreCase(str, "jspstudy")}</b><br>
trim : ***<b>${fn:trim(" http://JSPStudy.co.kr ")}</b>***<br>
<c:set var="arr" value="${fn:split(str, ' ')}" />
join : <b>${fn:join(arr, "&&")}</b>
④ SQL
<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>
- setDataSource : 세팅
<sql:setDataSource driver="드라이버" url="url" user="유저명", password="비밀번호" var="변수" scope="범위">
<sql:setDataSource
driver="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@localhost:1521:xe"
user="scott"
password="1111"
var="db"
scope="application" />
- query : 쿼리작성
<sql:query var="변수명" datasource="설정한데이터소스"> SQL문 </sql:query>
<sql:query var="lists" dataSource="${db }">
SELECT id, name FROM tblmember
</sql:query>
<c:forEach var="member" items="${lists.rows}">
${member}<br>
</c:forEach>
- update: UPDATE
<sql:update dataSource="설정한데이터소스"> UPDATE문 </sql:update>
<sql:update dataSource="${db}">
UPDATE tblmember SET name=? WHERE id=?
<sql:param value="${'rorod'}" />
<sql:param value="${'sky123'}" />
</sql:update>
'Web > JSP&Servlet' 카테고리의 다른 글
JDBC (0) | 2020.04.24 |
---|---|
Scope (0) | 2020.04.23 |
EL(Expression Language) (0) | 2020.04.23 |
Cookie와 Session (0) | 2020.04.08 |
[JSP]지시자 (0) | 2020.04.08 |