표준 태그 라이브러리

프로그래밍 언어를 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

+ Recent posts