JSTL(JSP Standard Tag Library)
1. JSTL(JSP Standard Tag Libray)
- jsp ํ์ด์ง์์ ์กฐ๊ฑฐ๋ฌธ ์ฒ๋ฆฌ, ๋ฐ๋ณต๋ฌธ ์ฒ๋ฆฌ๋ฑ์ html tag ํํ๋ก ์์ฑํ ์ ์๊ฒ ๋์์ค๋ค.
- EL๊ณผ์ ์ฐจ์ด์ ์ EL์ ๋จ์ํ ๋ณ์๋ฅผ ํํํด ์ฃผ๋๊ฒ์ด๋ฏ๋ก ๋คํฅํ ํํ๋ก jsp๋ฅผ ์ฌ์ฉํ ์ ์๋ค.
- JSTL์ ์์ฉ ๋ชฉ์ ์ ์คํฌ๋ฆฟ์ ๋์ฒด ํ๊ธฐ ์ํจ์ด๋ค.
- JSTL์ ์ปค์คํ Tag์ด๋ค.
2. JSTL ์ฌ์ฉ๋ฒ
- JSTL์ ์ถ๊ฐ ์ ์ธ jar ํ์ผ์ด ํ์ํ๋ค
- http://tomcat.apache.org/download-taglibs.cgi ์ฌ๊ธฐ์์ ๋ค์์ ํ์ผ 3๊ฐ์ ๋ฐ์ ํ WEB-INF/lib/ ์ ๋ณต์ฌํ๋ฉด๋๋ค
3. JSTL ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ข ๋ฅ ๋ฐ ๊ธฐ๋ฅ
(์ถ์ฒ: http://youssol.tistory.com/8 [์ด์ธ, ์ด์์ด๋ค ์ด์ผ๊ธฐ])
๋ผ์ด๋ธ๋ฌ๋ฆฌ |
ํ์ ๊ธฐ๋ฅ |
์ ๋์ด |
๊ด๋ จ URI |
์ฝ์ด |
๋ณ์ ์ง์, ํ๋ฆ ์ ์ด, URL ์ฒ๋ฆฌ |
c |
|
XML |
XML ์ฝ์ด, ํ๋ฆ์ ์ด, XML ๋ณํ |
x |
|
๊ตญ์ ํ |
์ง์ญ, ๋ฉ์ธ์ง ํ์, ์ซ์ ๋ฐ ๋ ์ง ํ์ |
fmt |
|
๋ฐ์ดํฐ๋ฒ ์ด์ค |
SQL |
sql |
|
ํจ์ |
์ฝ๋ ์ ์ฒ๋ฆฌ, String ์ฒ๋ฆฌ |
|
http://java.sun.com/jsp/jstl/functions |
4. Core(์ฝ์ด) ๋ผ์ด๋ธ๋ฌ๋ฆฌ์์ ์ฌ์ฉ ํ ์ ์๋ ๊ธฐ๋ฅ
5. JSTL ์์ฉ ํ๊ธฐ ์ํ ์ค์
- JSTL์ ์ฌ์ฉํ๊ธฐ ์ํด์๋ ์๋ก์ด ์ง์์๋ฅผ ๋ง๋ค์ด์ํ๋ค
- Core๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ ์์ด๋ c์ด๋ฏ๋ก prefix๋ฅผ c๋ก ํด์ค๋ค.
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
6. JSTL ํ๊ทธ ์ฌ์ฉ๋ฒ
==================================== ๋ณ์ ์ง์ ====================================
1) set
<c:set var="varnname" scope="request" value="someValue"/>
๋๋
<c:set var="varnname" scope="request">
some value
</c:set>
- scope : ๋ณ์๋ฅผ ์ ์ฅํ ์์ญ
2) remove
<c:remove var="varname" scope="request"/>
- scope : ๋ณ์๊ฐ ์ ์ฅ๋ ์์ญ
==================================== ํ๋ฆ ์ ์ด ====================================
3) if
<c:if test="์กฐ๊ฑด">
...
...
</c:if>
4) choose
<c:choose>
<c:when test="์กฐ๊ฑด1">
....
</c:when>
<c:when test="์กฐ๊ฑด2">
....
</c:when>
<c:otherwise>
...
</c:otherwise>
</c:choose>
5) forEach
<c:forEach var="๋ณ์" items="์์ดํ (๋ฐฐ์ด๋๋ ๋งต์ด ๋ค์ด๊ฐ๋ค)" [begin="์์๋ฒํธ"] [end="๋๋ฒํธ"]>
${๋ณ์}
</c:forEach>
6) forToken
<c:forTokens items="123-456-789" delims="-" var="sel">
${sel}
</c:forTokens>
- items : ์๋ฅผ ๋ฌธ์์ด
- delims : ๊ตฌ๋ถ ๋ฌธ์์ด
- val : ์๋ฅธ ๋ฌธ์์ด์ด ์ ์ฅ๋ ๋ณ์
==================================== url ์ฒ๋ฆฌ ====================================
7) import
<c:import url="URL" charEncoding="์บ๋ฆญํฐ์ธ์ฝ๋ฉ" var="๋ณ์๋ช " scope="๋ฒ์">
<c:param name="ํ๋ผ๋ฉํฐ์ด๋ฆ" value="ํ๋ผ๋ฉํฐ๊ฐ"/>
</c:import>
- URL : ๊ฒฐ๊ณผ๋ฅผ ์ฝ์ด์ฌ URL
- charEncoding : ์ฝ์ด์จ ๊ฒฐ๊ณผ๋ฅผ ์ ์ฅํ ๋ ์ฌ์ฉํ๋ ์บ๋ฆญํฐ ์ธ์ฝ๋ฉ
- var : ์ฝ์ด์จ ๊ฒฐ๊ณผ๋ฅผ ์ ์ฅํ ๋ณ์๋ช
- scope : ๋ณ์๋ฅผ ์ ์ฅํ ์์ญ
- <c:param> ํ๊ทธ๋ url ์์ฑ์ ์ง์ ํ ์ฌ์ดํธ์ ์ฐ๊ฒฐ ํ ๋ ์ ์กํ ํ๋ผ๋ฉํฐ ์ ๋ณด
8) redirect
<c:redirect url="redirectํ URL">
<c:param name="ํ๋ผ๋ฉํฐ์ด๋ฆ" value="ํ๋ผ๋ฉํฐ๊ฐ"/>
</c:redirect>
- url : redirection ํ ์ฃผ์
- <c:param> ํ๊ทธ๋ url ์์ฑ์ ์ง์ ํ ์ฌ์ดํธ์ ์ฐ๊ฒฐ ํ ๋ ์ ์กํ ํ๋ผ๋ฉํฐ ์ ๋ณด
9) url
<c:url var="URL ์ ์ฅ ๋ณ์" value="URL" scope="๋ณ์ ๊ณต์ ๋ฒ์" />
<c:param name="keyword" value="${searchTerm}"/> <c:param name="month" value="02/2003"/>
</c:url>
- var : ์์ฑํ URL์์ ์ฅํ ๋ณ์๋ช
- value : ์์ฑํ URL
- scope : ๋ณ์๋ฅผ ์ ์ฅํ ์์ญ
- <c:param> ํ๊ทธ๋ url ์์ฑ์ ์ง์ ํ ์ฌ์ดํธ์ ์ฐ๊ฒฐ ํ ๋ ์ ์กํ ํ๋ผ๋ฉํฐ ์ ๋ณด
==================================== ๊ธฐํ ํ๊ทธ ====================================
10) catch
<c:catch var ="catchException">
<% int x = 5/0;%>
</c:catch>
<c:if test = "${catchException != null}">
<p>The exception is : ${catchException} <br />
There is an exception: ${catchException.message}</p>
</c:if>
- var : ์์ธ์ฒ๋ฆฌ ๊ฒฐ๊ณผ๊ฐ ์ ์ฅ๋ ๋ณ์๋ช
11) out
<c:out value="value" escapeXml="{true|fale|" default="default value"/>
- value : JspWrite์ ์ถ๋ ฅํ ๊ฐ์ ๋ํ๋ธ๋ค. ์ผ๋ฐ์ ์ผ๋ก value์์ฑ์ ๊ฐ์ String๊ณผ ๊ฐ์ ๋ฌธ์์ด์ด๋ค. ๋ง์ฝ value์ ๊ฐ์ด java.io.Reader์ ํ ์ข ๋ฅ๋ผ๋ฉด out ํ๊ทธ๋ Reader๋ก ๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด์์ JspWrite์ ๊ฐ์ ์ถ๋ ฅํ๋ค.
- escapeXml : true์ผ ๊ฒฝ์ฐ ์๋ ์๊ฐ์ด ๋ฌธ์๋ฅผ ๋ณ๊ฒฝํ๋ค.
๋ฌธ์ |
๋ณ๊ฒฝ๋ ํํ |
< |
< |
> |
> |
& |
& |
' |
' |
" |
" |
- default : value ์์ฑ์ ์ง์ ํ ๊ฐ์ด ์กด์ฌํ์ง ์์๋ ์์ฉ๋ ๊ฐ์ ์ง์ ํ๋ค.
์ถ์ฒ: https://doitnow-man.tistory.com/90 [์ฆ๊ฑฐ์ด์ธ์ (์คํจ ๋ํ๋์ ์ฑ๊ณต)]
'๐ ์๋ฐ ์๋ฒ ํ์ด์ง JSP' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
JSP - EL ํ๊ทธ (Expression Language Tag) (0) | 2021.03.23 |
---|---|
JSP - MVC Model 1 / ๋ก๊ทธ์ธ ๊ฒ์ํ ๊ตฌ์ถ (0) | 2021.03.22 |
JSP - ํ์ด์ง ์๋ก๊ณ ์นจํ๋ฉด ํ ์ด๋ธ(<tr>) ์์ฑ + (0) | 2021.03.15 |
JSP - 2. ์ค๋ฌธ์ง ์์ฑํ์ฌ JSP ํ์ด์ง๋ก ๋ฐ์ดํฐ ๋๊ธฐ๊ธฐ (0) | 2021.03.15 |
JSP - 1. ๋ด์ฅ๊ฐ์ฒด (Parameter) ๋ก ๋ฐ์ดํฐ ๋ฐ์ ์ ์ก (0) | 2021.03.15 |
๋๊ธ