* useBean action tag์ scope์์ฑ
- scriptlet์์ ๊ฐ์ฒด๋ฅผ ์์ฑํ๊ณ scope๊ฐ์ฒด์ ์ ์ฅํ๋ ์ฝ๋๋ฅผ
<jsp:useBean> ์ก์ ํ๊ทธ์์๋ ํ๋ฒ์ ์ํ ํ ์ ์๋ค.
scope๊ฐ์ฒด - pageContext, request, session, application
Scope๊ฐ์ฒด์ ํน์ง
page : JSP๊ฐ ํธ์ถ๋ ๋๋ง๋ค VO๊ฐ ์์ฑ๋๊ณ , VO๊ฐ ํด๋น JSP์์๋ง ์ฌ์ฉ๋๋ค.
request : JSP๊ฐ ํธ์ถ๋ ๋๋ง๋ค VO๊ฐ ์์ฑ๋๊ณ , VO๊ฐ forward๋ก ์ด๋ํ ํ์ด์ง์์๋ ์ฌ์ฉ๋ ์ ์๋ค.
session : ์น ๋ธ๋ผ์ฐ์ ๋ง๋ค ํ๋์ VO๊ฐ ๊ฐ์ฒด๊ฐ ์์ฑ๋๊ณ , ์์ฑ๋ VO๊ฐ์ฒด๋ ๋ชจ๋ JSP์์ ์ ์์๋ฅผ ์๋ณํด ๊ฐ๋ฉด์ ์ฌ์ฉ๋๋ค.
application : ์ต์ด ์ ์์์ ์ํด ํ๋์ ๊ฐ์ฒด๊ฐ ์์ฑ๋๊ณ , ์์ฑ๋ ๊ฐ์ฒด๋ ๋ชจ๋ ์ ์์๊ฐ ๊ณต์ ํ์ฌ ์ฌ์ฉํ๋ค.
<jsp:useBean id="๊ฐ์ฒด๋ช " class="ํจํค์ง๋ช .ํด๋์ค๋ช " scope="scope๊ฐ์ฒด์ค ํ๋"/>
* EL(Expression Language)
-ํํ์ธ์ด : JSP์์ ํ๋ฉด ์ถ๋ ฅ์ ํ๊ธฐ ์ํด ๋ง๋ค์ด์ง ์ธ์ด.
-page directive์ isELIgnored=“false” ์ธ ์ํ์์ ์ฌ์ฉํ ์ ์๋ค.
-๋ณ์์ ๊ฐ, scope๊ฐ์ฒด์ ๊ฐ, web parameter๊ฐ, ๊ฐ๋จํ ์ฐ์ฐ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํ๋ค.
์ฌ์ฉ๋ฒ)
${ ์ฝ๋ }
์ฐ์ฐ์์ ์ฌ์ฉ)
${ ๊ฐ ์ฐ์ฐ์ ๊ฐ }
์ฌ์ฉ๊ฐ๋ฅํ ์ฐ์ฐ์
๋จํญ : !( not ), +, -
์ฐ์ : +, - , *, /, % // ์ ์ / ์ ์ = ์ค์
๊ด๊ณ : > ( gt ), < ( lt ), >=( ge ), <= ( le ), == ( eq ), != ( ne )
๋ ผ๋ฆฌ : ์ผ๋ฐ๋ ผ๋ฆฌ && ( and ), || (or)
์ผํญ : ? :
EL์์๋ ๋ฌธ์๊ฐ ์กด์ฌํ์ง ์๋๋ค. ( “ ๋ ‘๋ก ๋ฌธ์์ด์ ํํํ ์ ์๋ค.)
“์๋ ํ์ธ์”, ‘์๋ ํ์ธ์’
null์ ์ถ๋ ฅํ์ง ์๋๋ค.
empty : ๋น์ด์๋ ๊ฐ์ ๋น๊ตํ์ฌ true | false ๋ก ๋ฐํํ๋ค.
${ param.name != null || param.name != “” },
=> ${ empty param.name }
web parameter ์ถ๋ ฅ)
- param๊ฐ์ฒด ์ฌ์ฉํ๋ค.
${ param.ํผ์ปจํธ๋กค๋ช }
Web parameter๋ช ์ด ์ ์ผํ ๊ฒฝ์ฐ
${ paramValues.ํผ์ปจํธ๋กค๋ช [์ธ๋ฑ์ค] }
Web parameter๋ช ์ด ์ค๋ณต๋๋ ๊ฒฝ์ฐ
*๋ณ์ ์ถ๋ ฅ
- EL์์๋ ๋ณ์๋ฅผ ์ง์ ์ถ๋ ฅ ํ ์ ์๋ค.
*Scope ๊ฐ์ฒด์ ์ฌ์ฉ.
- scope ๊ฐ์ฒด์ ์ ์ฅ๋ ๊ฐ์ ์ถ๋ ฅ ํ ์ ์๋ค.
์ฌ์ฉ๋ฒ)
page => pageScope.์ด๋ฆ
request => requestScope.์ด๋ฆ
session => sessionScope.์ด๋ฆ
application =>applicationScope.์ด๋ฆ
1.scope๊ฐ์ฒด์ ๊ฐ ์ค์
pageContext.setAttribute(“์ด๋ฆ”,๊ฐ);
request.setAttribute(“์ด๋ฆ”,๊ฐ);
session.setAttribute(“์ด๋ฆ”,๊ฐ);
application.setAttribute(“์ด๋ฆ”,๊ฐ);
2.EL์์ scope๊ฐ์ฒด์ ๊ฐ ์ฌ์ฉ
Scope๊ฐ์ฒด๋ ์๋ต๊ฐ๋ฅ
${ pageScope.์ด๋ฆ }
${ requestScope.์ด๋ฆ }
${ sessionScope.์ด๋ฆ }
${ applicationScope.์ด๋ฆ }
scope๊ฐ์ฒด๊ฐ ๊ฐ์ ์ด๋ฆ์ ๊ฐ์ง ๋
pageContext.setAttribute(“a”,”test1”);
request.setAttribute(“a”,”test2”);
session.setAttribute(“a”,”test3”);
application.setAttribute(“a”,”test4”);
2.EL์์ scope๊ฐ์ฒด๋ช ์ ์๋ตํ๊ณ ํ ๋น๋ ์ด๋ฆ๋ง ์ฌ์ฉํ๋ฉด ์ด๋ค scope๊ฐ์ฒด์ ๊ฐ์ ์ฌ์ฉํ๊ฒ ๋ ๊น?
${ a } // ๊ฐ์ฅ ์ ๊ทผ๋ฒ์๊ฐ ์ ํ์ ์ธ scope๊ฐ์ฒด์
๊ฐ์ ์ฌ์ฉํ๊ฒ๋๋ค. “test1”์ด ๋์จ๋ค
์ด๋ฆ : <strong><%= request.getParameter("name") %></strong> <br/>
<!-- EL์ null์ ์ถ๋ ฅํ์ง ์๋๋ค. -->
์ด๋ฆ : <strong>${ param.name }</strong> <br/>
<div>
<!-- empty ๊ฐ์ด ๋น์ด์๋? -->
${empty param.name ?"์๋์ ๋งํฌ๋ฅผ ํด๋ฆญํด์ฃผ์ธ์":"ํด๋ฆญํ์
จ์ต๋๋ค"}
</div>
//EL์์๋ ๋ณ์์ ์ง์ ์ ๊ทผ์ด ๋์ง ์์ผ๋ฏ๋ก, scope๊ฐ์ฒด์ ํ ๋นํ์ฌ ์ ๊ทผํ๋ค.
'๐ ๊ตญ๋น์ง์ํ์ > ๐JSP ์์ ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JSP] ํ์ 230412(์) forEach, forTokens, DBCP (0) | 2023.05.17 |
---|---|
[JSP] ํ์ 230411(ํ) JSTL, core, choose (0) | 2023.05.17 |
[JSP] ํ์ 230407(๊ธ) ํ์ค์ก์ (<jsp:useBean>) (0) | 2023.05.16 |
[JSP] ํ์ 230406(๋ชฉ) Cookie, ํ์ค์ก์ (<jsp:include>, <jsp:forward>) (0) | 2023.05.16 |
[JSP] ํ์ 230404(ํ) ๊ด๊ณ์ ์ง, session, cookie (0) | 2023.05.16 |