728x90
300x250
โจ1. JSTL ์ด๋
1. JSP ํ์ค๋ผ์ด๋ธ๋ฌ๋ฆฌ(JSP Standard Tag Library) ์ด๋ค.
2. JSP์์ (๋ฐ๋ณต๊ณผ ์กฐ๊ฑด, ๋ฐ์ดํ ๊ด๋ฆฌ ํฌ๋งท, XML ์กฐ์, ๋ฐ์ดํ๋ฒ ์ด์ค ์ก์ธ์ค)์ ๊ตฌํํ๋ ์ปค์คํ ํ๊ทธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ชจ์์ด๋ค.
3. ์๊ฐ, ๋ ์ง, ์ซ์์ ํฌ๋งท์ด๋ ๋ฌธ์์ด ๊ฐ๊ณต๋ฑ์ ์ฒ๋ฆฌ์์ ๋น์ฆ๋์ค๋ก์ง๊ณผ ํ๋ฆฌ์ ํ ์ด์ ๋ก์ง์ ๋ถ๋ฆฌํ ์ ์๊ฒ ํด์ค๋ค.
4. JSTL์ EL(Expression Language)๋ฅผ ์ฌ์ฉํ์ฌ ํํํ๋ค.
โจ2. JSTL ๋ผ์ด๋ธ๋ฌ๋ฆฌ
๋ผ์ด๋ธ๋ฌ๋ฆฌ | ๊ธฐ๋ฅ | ์ ๋์ด |
์ฝ์ด | ์ผ๋ฐ ํ๋ก๊ทธ๋จ ์ธ์ด์์ ์ ๊ณตํ๋ ๋ณ์์ ์ธ, ์กฐ๊ฑด/์ ์ด/๋ฐ๋ณต๋ฌธ๋ฑ์ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค. | c |
ํฌ๋งทํ | ์ซ์,๋ ์ง,์๊ฐ์ ํฌ๋งทํ ํ๋ ๊ธฐ๋ฅ๊ณผ ๊ตญ์ ํ, ๋ค๊ตญ์ด ์ง์ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค. | fmt |
ํจ์ | ๋ฌธ์์ด์ ์ฒ๋ฆฌํ๋ ํจ์๋ฅผ ์ ๊ณตํ๋ค. | fn |
๋ฐ์ดํฐ๋ฒ ์ด์ค | ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅ/์์ /์ญ์ /์กฐํํ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค. | sql |
XML์ฒ๋ฆฌ | XML ๋ฌธ์๋ฅผ ์ฒ๋ฆฌํ ๋ ํ์ํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค. | x |
โจ3. JSTL ๋ฌธ๋ฒ
1. Core
๋ช ๋ น์ด | ๋ด์ฉ | ์์ |
c:url | url ํธ์ถ |
<c:url value="test.jsp"/>
<c:url value="/test.jsp" context="/other"/>
|
c:out | ๊ฐ์ฒด๋ฅผ ํ๋ฉด์ ์ถ๋ ฅ |
<c:out value="${data}"/>
<c:out value="${data}" default="๊ฐ์์"/>
|
c:set | ์ ์ฅ์์ญ์ ๊ฐ์ฒด๋ฅผ ์ ์ฅ |
<!-- scope : page, request, session, application -->
<c:set scope="request" var="data" value="my_testValue" />
|
c:forEach | ๋ฐ๋ณต๋ฌธ ์ ์ด |
<c:forEach var="NOTICE" items="${NOTICE_LIS}" varStatus="status">
<c:out value="${NOTICE.COLUMN}"/>
</c:forEach>
<!-- 0123456 -->
<c:forEach var="S" begin="0" end="6">
<c:out value="${S}"/>
</c:forEach>
<!-- 036 -->
<c:forEach var="S" begin="0" end="6" step="3">
<c:out value="${S}"/>
</c:forEach>
|
c:remove | ์ ์ฅ์์ญ์์ ๊ฐ์ฒด๋ฅผ ์ญ์ | <c:remove scope="request" var="data" /> |
c:if | ์กฐ๊ฑด๋ฌธ ์ ์ด |
<c:if test="${empty data}">
data ๊ฐ์ด ๋น์ด์์ผ๋ฉด ์คํ
</c:if>
|
c:choose c:when c:otherwise |
๋ณตํฉ์กฐ๊ฑด๋ฌธ ์ ์ด |
<c:choose>
<c:when test="${data == 'A'}">data ๊ฐ์ด A์ด๋ฉด ์คํ</c:when>
<c:when test="${data == 'B'}">data ๊ฐ์ด B์ด๋ฉด ์คํ</c:when>
<c:when test="${data == 'C'}">data ๊ฐ์ด C์ด๋ฉด ์คํ</c:when>
<c:otherwise>data ๊ฐ์ด A, B, C๊ฐ์ด ์๋ ๊ฒฝ์ฐ ์คํ</c:otherwise>
</c:choose>
|
c:import! | ๋ค๋ฅธ jspํ๋ฉด์ ํ์ฌ ํ๋ฉด์ ์ถ๋ ฅ | <c:import! url="test.jsp"/> |
c:redirect | ๊ฒฝ๋ก ์ด๋ | <c:redirect url="์ฃผ์"/> |
2. ์ฐ์ฐ์
์ฐ์ฐ์ | ์์ | ๊ฒฐ๊ณผ๋ด์ฉ |
== eq |
${1 == 1} ${1 eq 1} |
true |
!= ne |
${1 != 1} ${1 ne 1} |
false |
< lt |
${1 < 10} ${1 lt 10} |
true |
> gt |
${1 > 10} ${1 gt 10} |
false |
<= le |
${1 <= 1} ${1 le 1} |
true |
>= ge |
${1>=0} ${1 ge 0} |
false |
&& and |
${true && false} ${true and false} |
false |
|| or |
${true || false} ${true or false} |
true |
! not |
${!true} ${not true} |
false |
empty | ${empty name} | name์ด null์ด๊ฑฐ๋ ๋น ๋ฌธ์์ด์ด๋ฉด true |
not empty | ${not empty name} | name์ด null๋ ์๋๊ณ ๋น ๋ฌธ์์ด๋ ์๋๋ฉด true |
โจ4. status ์ํ ์์ฑ ์ ์ด
< c:foreach items=”${RESULT}” var=”RESULT” varStatus=”status”>
${status.current}<br/> <!– ํ์ฌ ์์ดํ
–>
${status.index}<br/> <!– 0๋ถํฐ์ ์์ –>
${status.count}<br/> <!– 1๋ถํฐ์ ์์ –>
${status.first}<br/> <!– ํ์ฌ ๋ฃจํ๊ฐ ์ฒ์์ธ์ง ๋ฐํ –>
${status.last}<br/> <!– ํ์ฌ ๋ฃจํ๊ฐ ๋ง์ง๋ง์ธ์ง ๋ฐํ –>
${status.begin}<br/> <!– ์์๊ฐ –>
${status.end}<br/> <!– ๋๊ฐ –>
${status.step}<br/> <!– ์ฆ๊ฐ๊ฐ –>
< /c:forEach>
โจ5. JSTL for ๋ฌธ
1. ์ธ๋ฑ์ค๋ก ์ ๊ทผ
<c:forEach var="i" begin="1" end="5" step="1" varStatus="status">
๋ฒํธ : ${status.count}
์ด๋ฆ : ${item[i].name}
์ง์
: ${item[i].job}
๊ธ์ฌ : ${item[i].salary}
</c:forEach>
2. begin๊ณผ end๋ก ์ ๊ทผ
<c:forEach var="item" items="${list}" begin=0 end=5 step=1 varStatus="status">
๋ฒํธ : ${status.count}
์ด๋ฆ : ${item.name}
์ง์
: ${item.job}
๊ธ์ฌ : ${item.salary}
</c:forEach>
3. ์ผ๋ฐ์ ์ธ ์ ๊ทผ
<c:forEach var="item" items="${list}" varStatus="status">
๋ฒํธ : ${status.count}
์ด๋ฆ : ${item.name}
์ง์
: ${item.job}
๊ธ์ฌ : ${item.salary}
</c:forEach>
4. JSTL break๋ฌธ ๊ตฌํ
<c:set var="doneLoop" value="false" />
<c:forEach var="entity" items="${_STORE}" varStatus="status">
<c:if test="${status.count % 6 eq 1}">
<c:set var="doneLoop" value="false" />
</c:if>
<c:if test="${not doneLoop}">
<span><input type="checkbox" id="store_id" name="store_id" value="<c:out value="${entity.STORE_ID}"/>" <c:out value="${entity.USE_YN}"/>><c:out value="${entity.STORE_NM}"/></span>
<c:if test="${status.count % 6 eq 0}">
<c:set var="doneLoop" value="true"/>
</c:if>
</c:if>
</c:forEach>
728x90
300x250
'๊ฐ๋ฐ์ธ์ด > JSP' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JSP/Servlet] ํ์ผ์ ๋ก๋ ๊ตฌํํ๊ธฐ +ํ์ด์ง (0) | 2022.06.13 |
---|---|
[JSP/Servlet] css, js ์ ์ฉ์ด ์๋จ ํด๊ฒฐํ๊ธฐ (1) | 2022.04.05 |
[JSP] ๊ฒ์๊ธ ์ค๋ฐ๊ฟํ๊ธฐ - ( c:out / <pre> ํ๊ทธ ) (0) | 2022.03.30 |
JSP - ์๋ธ๋ฆฟ ๊ธฐ์ด ( model 2 ๋ฐฉ์ ) STEP 2 (0) | 2022.03.28 |
JSP - ์๋ธ๋ฆฟ ๊ธฐ์ด ( model 2 ๋ฐฉ์ ) STEP 1 (0) | 2022.03.28 |