useBean : session bean : bean Ȱ¿ë #1 : Bean Ȱ¿ë #2

JSP °­ÁÂ > useBean > session bean

2001-01-02 kenu


bean¿¡ ´ëÇØ¼­ ´õ °í±Þ½º·´°Ô ¾Ë±â°¡ Âü Èûµå³×¿ä. ¿¹Á¦¸¦ ½ÇÇàÇØº¸´Â °Íµµ ¹÷Â÷³×¿ä. ¿¹Á¦¸¦ ¹é°¡Áö ´Ù·ïº¸¸é ºó¿¡ ´ëÇØ¼­ ÀÚÀ¯·Ó°Ô ÄÚµùÇÒ ¼ö ÀÖ°í, ±âȹÇÒ ¼ö Àֱ⸦ ±×³É ¼Ò¸ÁÇØ º¾´Ï´Ù.

ºó¿¡´Â scope ¶ó´Â ¼Ó¼ºÀÌ ÀÖ½À´Ï´Ù. ¿ä°ÍÀ» Á¶Á¤Çϸé beanÀÇ ¿µÇâ·ÂÀ» ¸¾´ë·Î(?) Á¶Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ½ºÄÚÇÁ¶õ ¹üÀ§¶ó´Â ¸»·Î ÇØ¼®ÇÒ ¼ö ÀÖ½À´Ï´Ù. session beanÀÇ scope ¼Ó¼º¿¡´Â 4°¡Áö°¡ ÀÖ½À´Ï´Ù. page, request, session, application ÀÌ·¸°Ô 4°¡Áö ÀÔ´Ï´Ù. ´ëÃæ Àǹ̷Π¶§·Á¸ÂÃâ ¼ö ÀÖÀ» °Ì´Ï´Ù. Ãʺ¸´Â Âï´Â ½Ç·ÂÀÌ ÁÁÀ»¼ö·Ï ÄÚµù¿¡ °ú°¨ÇÏ°Ô µË´Ï´Ù. ¹°·Ð ¼ö½ÀÇÒ ¼ö ÀÖµµ·Ï bak ÆÄÀÏÀº ¸¸µé¾î ³õ´Â °ÍÀÌ ÁÁÁÒ.

ÀÌÁ¦ »ìÆì º¼ ¿¹Á¦´Â Ã¥¿¡¼­ ºô·Á(º£²¸)¿Â °ÍÀÔ´Ï´Ù. page¸¶´Ù ·ÎµùµÉ ¶§ ±× »çÀÌÆ®¿¡ ¸Ó¹°·¯ ÀÖ´Â ½Ã°£À» Ç¥½ÃÇØ ÁÖ´Â ºóÀÔ´Ï´Ù.

TimerBean.java
package bean;
public class TimerBean {
	private long start;
	public TimerBean() {
		start = System.currentTimeMillis();
	}
	
	public long getElapsedMillis() {
		long now = System.currentTimeMillis();
		return now - start;
	}
	
	public long getElapsedSeconds() {
		return (long)this.getElapsedMillis()/1000;
	}
	
	public long getElapsedMinutes() {
		return (long)this.getElapsedMillis()/60000;
	}
	
	public void reset() {
		start = System.currentTimeMillis();
	}
	
	public long getStartTime() {
		return start;
	}
	
	public void setStartTime(long time) {
		if (time <= 0)
			reset();
		else
		  start = time;
	}
}

ÀÌ ÆÄÀÏÀ» TimerBean.java ¶ó´Â À̸§À¸·Î ÀúÀåÀ» Çϰí, WEB-INF/classes/bean µð·ºÅ丮 ¾Æ·¡ À§Ä¡½Ãŵ´Ï´Ù. ÀÌÁ¦ ÄÄÆÄÀÏÀ» ½Ãŵ´Ï´Ù. resin Àº ¿É¼Ç¿¡ µû¶ó¼­ ÄÄÆÄÀÏÇÏÁö ¾Ê¾Æµµ µË´Ï´Ù. tomcatÀÇ °æ¿ì´Â ÄÄÆÄÀÏ ÇØÁÖ¼¼¿ä. µµ½º¸ðµå¿¡¼­ ÄÄÆÄÀÏÇÏ½Ç ¶§, path ¿¡ E:\jdk1.3\bin ÀÌ ÀâÇôÀÖ¾î¾ß ÇÕ´Ï´Ù. ±×¸®°í, classpath ¿¡´Â E:\jdk1.3\lib\tools.jar °¡ ÀâÇôÀÖ¾î¾ß ÇÕ´Ï´Ù. ȯ°æº¯¼ö ¼³Á¤ÇÏ´Â ¹ýÀº [´Ù¸¥ °­ÁÂ]¸¦ Âü°íÇØÁÖ¼¼¿ä. ±×¸®°í, beanÀÌ µ¹±â À§Çؼ­´Â E:\jakarta-tomcat\webapps\ROOT\WEB-INF\classes °¡ classpath ¿¡ Ãß°¡µÇ¾î¾ß ÇÕ´Ï´Ù. ´Ù¸¥ °÷¿¡¼­(ÅèĹÀÇ È¯°æ¼³Á¤ÆÄÀÏ) ¼³Á¤ÇÏ´Â ¹ýÀº Àúµµ Ž»öÁßÀÔ´Ï´Ù. ÀÏ´Ü ¾îµðµç classpath °¡ ¼³Á¤µÇ¾î ÀÖ´Ù¸é ºóÀÌ µ¹¾Æ°¥ ¼ö ÀÖ½À´Ï´Ù.

 

ÀÌÁ¦ WEB-INF\classes\bean\TimerBean.class ÆÄÀÏÀ» È®ÀÎÇϽðí, jsp ÆÄÀÏ·Î ³Ñ¾î°©´Ï´Ù.

spentTime.jsp

<jsp:useBean id="timer" class="bean.TimerBean" scope="session" />
<font color="8080FF" style="font-size:8pt">Surfing Time:
<jsp:getProperty name="timer" property="elapsedSeconds" /> Secs</font>

ÀÌ ÆÄÀÏÀº tomcatÀÇ °æ¿ì ROOT µð·ºÅ丮¿¡ ³Ö¾îÁÖ¼¼¿ä. ResinÀÇ °æ¿ì doc µð·ºÅ丮, ±×¸®°í, server.xml À̳ª resin.conf ¸¦ º¯°æÇÏ¼Ì´Ù¸é ±×°÷¿¡¼­ ÁöÁ¤ÇÑ root µð·ºÅ丮¿¡ Áý¾î³Ö¾îÁÖ½Ã¸é µË´Ï´Ù.

ÀÏ´Ü ¼³Ä¡°¡ ´Ù µÇ¼Ì´Ù¸é http://localhost/spentTime.jsp ·Î È®ÀÎÇØ º¾´Ï´Ù. ȯ°æ¼³Á¤ÆÄÀϵéÀ» º¯°æÇÏÁö ¾ÊÀ¸¼Ì´Ù¸é http://localhost:8080/spentTime.jsp Çϼž߰ÚÁÒ.

Unable to load class TimerBean ¿¡·¯°¡ ³ª¿Ô´Ù¸é ´Ù½Ã path¿Í classpath ¸¦ È®ÀÎÇØÁÖ¼¼¿ä. ±×¸®°í, ¼­¹ö Á׿´´Ù°¡ »ì¸®°í ´Ù½Ã ºÒ·¯º¸¼¼¿ä. ÀÖÀݾƿä. ´Ù¿îµÈ ÄÄÇ»Å͵µ Àü¿øÀ» ÆÜ ²°´Ù°¡ ۸é Á¦´ë·Î µ¹¾Æ°¡Àݾƿä. --; ºñÀ¯°¡ ¾È ÁÁ³×¿ä. Á¦ ÇѰèÀÔ´Ï´Ù. ^^;

È­¸é¿¡ Surfing Time : 0 secs ¶ó°í ³ª¿ÀÁÒ? Reload ÇØº¸¼¼¿ä. ½Ã°£ÀÌ ÀÚ²Ù ¿Ã¶ó°©´Ï´Ù. ÀÌ ÆÄÀÏÀ» ´Ù¸¥ ÆÄÀÏ¿¡¼­ ºÒ·¯¿À´Â °ÍÀÔ´Ï´Ù. Æ÷ÇÔ½ÃŰ´Â °ÍÀÌÁÒ.

sessionBean.jsp

<html>
<head><title>Bean °øºÎ
</title></head>
<body>
¼¼¼ÇºóÀ» ÀÌ¿ëÇØ¼­ »çÀÌÆ®¿¡¼­ ¸Ó¹«´Â ½Ã°£À» Ç¥½ÃÇØ ÁÝ´Ï´Ù.
<hr> &lt;jsp:include page="spentTime.jsp" flush="true" /><br>
<jsp:include page="spentTime.jsp" flush="true" />
<hr> &lt;%@ include file="spentTime.jsp" %><br>
<%@ include file="spentTime.jsp" %>
</body>
</html>

ÆÄÀÏÀ» spentTime.jsp °¡ ÀÖ´Â µð·ºÅ丮¿¡ ÀúÀåÇÕ´Ï´Ù. ±×¸®°í ºê¶ó¿ìÀú¿¡
http://localhost/sessionBean.jsp ¶ó°í ÀÔ·ÂÇÏ½Ã¸é ¾Æ±î ·ÎµùµÈ ½Ã°£¿¡ À̾ ½Ã°£ÀÌ ¿Ã¶ó°¥ °ÍÀÔ´Ï´Ù.

ÇѰ¡Áö Àå³­À» ÃÄ º¸°Ú½À´Ï´Ù. <%@ include file="..."%> °ú <jsp:include page="..."/> ÀÇ Â÷ÀÌÁ¡À» ´ëÃæ ´À³¢½Ç °ÍÀÔ´Ï´Ù. ±×¿¡ µû¸¥ ¼³¸íÀº ÇÏÁö ¾Ê°Ú½À´Ï´Ù. ±×³É ¾Ë°í °è¼¼¿ä. Àå³­Ä¡´Â ¹æ¹ýÀº spentTime.jsp ÆÄÀÏÀÇ color °ªÀÎ "8080FF" ¸¦ "808080" À¸·Î ¹Ù²Ù°í ÀúÀåÇÑ µÚ¿¡ http://localhost/sessionBean.jsp À» reload ÇØ º¸¼¼¿ä.

¾Æ¸¶µµ <%@ include file %> ÀÌ ¹Ì¿öÁú °Í °°½À´Ï´Ù. ´Ù¸¥ Àå³­Àº À½~ scope °ªÀ» º¯°æÇؼ­ Å×½ºÆ®ÇØ º¸¼¼¿ä. page, request, session, application Áß¿¡ Çϳª¸¦ spentTime.jsp ÆÄÀÏÀÇ <jsp:useBean/> ű×ÀÇ scope ¼Ó¼º °ª¿¡ ´ëÀÔÇØ¼­ ½ÇÇàÇØ º¸½Ê½Ã¿À. Â÷À̸¦ ´À³¥ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.

¿À´Ã °­ÀÇ´Â ¿©±â¼­ ¸¶Ä¡ÁÒ. µµ¿òÀÌ µÉ·¡³ª... ±×³É Ãʺ¸°­»ç¿´½À´Ï´Ù.

 

Âü°í : Web Development with Java Server Pages, ÀÎÆ÷ºÏ 192p

kenu: heogn@shinbiro.com
http://okjsp.pe.kr

prev : back : next
 
since 2000/12/05