| * °Á¸¦ ½ÃÀÛÇϱâÀü¿¡.....
±âº»ÀûÀÎ sessionÀ» »ç¿ëÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ¼ °ÀÇ ÇÕ´Ï´Ù. µû¶ó¼ session À» óÀ½ Á¢ÇϽô ºÐµéÀ» À§ÇÑ °ÁÂÀÔ´Ï´Ù. º» °Á ³»¿ëÀ» Åä´ë·Î ¾à°£¸¸ ÀÀ¿ëÀ» ÇÑ´Ù¸é, Log-in, Shopping-cart µîÀ» ½±°Ô Á¦ÀÛ °¡´É Çϸ®¶ó »ý°¢ µË´Ï´Ù.
* Session À̶õ ¹«¾ùÀΰ¡?
¿äÁò ´ëºÎºÐÀÇ À¥»çÀÌÆ®¿¡´Â ȸ¿øÀ¸·Î °¡ÀÔÇϰí, ·Î±×ÀÎÇÏ¿© »ç¿ë ÇÒ ¼ö ÀÖµµ·Ï ±¸ÇöµÇ¾î ÀÖ½À´Ï´Ù. Çѹø ·Î±×ÀÎÀ» ÇÏ¸é ·Î±×¾Æ¿ôÀ» Çϱâ Àü±îÁö ´ëºÎºÐÀÇ ¸Þ´º¿¡¼ »ç¿ëÀÚ¸¦ ÀνÄÇϰí, ±×¿¡ ¸Â°Ô 󸮸¦ Çϵµ·Ï Çϰí ÀÖ½À´Ï´Ù.
Áï, ¹«¾ùÀΰ¡ ¼¹ö¿Í »ç¿ëÀÚ°£ÀÇ ¿¬°áÀÌ µÇ¾ú´Ù´Â ÀǹÌÀÌÁÒ. ±×·¯ÇÑ ¹æ¹ýÀ¸·Î '·Î±×ÀÎ' À̶ó´Â ¹æ¹ýÀ» »ç¿ëÇÏ´Â °ÍÀÔ´Ï´Ù. »ç½Ç ·Î±×ÀÎÀ̶ó´Â °³³äÀº À¯´Ð½º¿¡¼ óÀ½ »ç¿ëµÈ °³³äÀε¥, À¥»çÀÌÆ®¿¡¼ »ç¿ëµÇ´Â ·Î±×ÀÎÀº ´ÜÁö »ç¿ëÀÚ Á¤º¸¸¦ '¼¼¼Ç'¿¡ ÀúÀåÇϱâ À§ÇÑ ¹æ¹ý¿¡ ºÒ°úÇÕ´Ï´Ù. (ÀÌÇØ ºñÇØ À¯´Ð½ºÀÇ ·Î±×ÀÎÀº ·Î±×ÀÎ ÇÏÁö ¾ÊÀ¸¸é ¾Æ¿¹ Á¢±Ù Á¶Â÷ ºÒ°¡´ÉÇÏÁÒ)
¶Ç ´Ù¸¥ ¿¹·Î, ¼îÇÎīƮ(Àå¹Ù±¸´Ï)¸¦ ¿¹·Î µé ¼ö ÀÖ½À´Ï´Ù. ¿ì¸® ¼îÇθô¿¡¼ ¹°°ÇÀ» ¼±ÅÃÇØ¼ Àå¹Ù ±¸´Ï¿¡ ´ã¾Æ µÎ¸é ½Å±â ÇϰԵµ ´ã¾ÆµÐ ¹°°ÇÀÌ °è¼Ó ³²¾Æ ÀÖ°Ô µÇÁÒ ^^ ¾î¶§¿ä? ½Å±â ÇÏÁö ¾Ê½À´Ï±î? ¤Ñ¤Ña
Áï, ¼¼¼ÇÀ̶õ ¼¹ö(À¥»çÀÌÆ®)¿Í Ŭ¶óÀ̾ðÆ®(»ç¿ëÀÚ)°£ÀÇ ¿¬°áÀÓ°ú µ¿½Ã¿¡, »ç¿ëÀÚÀÇ Çൿ Á¤º¸(?)¸¦ ÀúÀåÇÏ´Â Àӽðø°£ÀÎ °ÍÀÔ´Ï´Ù.
»ç¿ëÀÚ°¡ JSPÆäÀÌÁö¿¡ Á¢±Ù ÇÏ°Ô µÇ¸é ¼ºí¸´ ¿£ÁøÀº À¯ÀÏÇÑ ¼¼¼ÇID¸¦ Çϳª ºÎ¿©ÇÏ°Ô µË´Ï´Ù. ±×¸®°í ±× ¼¼¼ÇÀÇ À¯È¿ ½Ã°£Àº »ç¿ëÀÚÀÇ ¸¶Áö¸· ¿äû(request)°¡ ÀÖÀº ÈĺηκÎÅÍ ±âº»ÀûÀ¸·Î 30ºÐ°£ ÀÔ´Ï´Ù. (¹°·Ð º¯°æ °¡´ÉÇÕ´Ï´Ù)
¾Æ·¡¿Í °°Àº ¹®ÀåÀÌ ÀÚµ¿À¸·Î Æ÷ÇԵǾî JSPÆäÀÌÁö ³»¿¡¼ µû·Î ¼¼¼Ç°´Ã¼¸¦ »ý¼ºÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù.
HttpSession session=pageContext.getSession(); // ÀÚµ¿À¸·Î Á¤ÀÇ µÊ
* Session ¿¡ °ª ÀúÀåÇϱâ
sessionÀº javax.servlet.http.HttpSession ¿¡ ÀÇÇØ¼ Á¤ÀÇ µÇ¾î ÀÖ½À´Ï´Ù. API ¹®¼¸¦ º¸½Ã¸é ¿©·¯°¡Áö ¸Þ¼ÒµåµéÀÌ ÀÖÀ¸³ª ¿ì¼±Àº °¡Àå ±âº»ÀûÀÎ ¸Þ¼Òµå ¸î°³¸¸ ¾Ë¾Æ º¸µµ·Ï ÇϰڽÀ´Ï´Ù. ÀÚ.. ±×·³ ¼¼¼Ç¿¡ °ªÀ» ÀúÀåÇØ º¸µµ·Ï ÇϰڽÀ´Ï´Ù.
session.setAttribute(String name, Object value);
°£È¤ putValue()¶ó´Â ¸Þ¼Òµå¸¦ »ç¿ëÇÏ¿© ¼³¸íÇϴ åµéÀÌ Àִµ¥, puValue´Â deprecatedµÇ¾úÀ¸¹Ç·Î »ç¿ëÇÏÁö ¾Ê±â¸¦ ±ÇÀåÇÕ´Ï´Ù. session ¿¡¼ name°ú value ´Â 1:1 ´ëÀÀÀÔ´Ï´Ù. nameÀº String ÇüÀ¸·Î µé¾î °¡°í value´Â ObjectÇü À̾î¾ß¸¸ ÇÕ´Ï´Ù. Áï int, double, char µîÀÇ primitive ÇüÀº »ç¿ëÇÒ¼ö°¡ ¾ø´Ù´Â °ÍÀÔ´Ï´Ù. µû¶ó¼ int typeÀÇ 5ÀÇ °ªÀ» °¡Áö´Â µ¥ÀÌÅÍ´Â ¾Æ·¡¿Í °°Àº °´Ã¼·Î º¯°æ½ÃÄÑ ÁÝ´Ï´Ù.
Integer value=new Integer(5); // int typeÀÇ 5¶ó´Â °ªÀ» °¡Áö´Â °´Ã¼
ÀÚ¹Ù±âÃÊÀÌ·ÐÀ» ¸ð¸£´Â ºÐÀ§ À§Çؼ Àá½Ã ¼³¸íÇÏÀÚ¸é, ÀÚ¹ÙÀÇ ¸ðµç °´Ã¼´Â Object °³Ã¼¸¦ ÀÚµ¿À¸·Î »ó¼Ó¹Þ°ÔµË´Ï´Ù. ºÎ¸ð °´Ã¤ÀÇ typeÀ¸·Î ÀÚ½Ä °´Ã¼¸¦ ³ªÅ¸³¾¼ö ÀÖÀ¸·Î Object typeÀ» »ç¿ëÇÏ¸é ¸ðµç °´Ã¼¸¦ reference ÇÒ ¼ö ÀÖ½À´Ï´Ù. À§¿Í °°Àº °æ¿ì session ¿¡ object typeÀ¸·Î ÀúÀåÀÌ µÊÀ¸·Î ÀúÀåµÈ °ªÀ» »ç¿ëÇÏ·Á¸é ´Ù½Ã ÀûÀýÇÑ type À¸·Î ij½ºÆÃÇÏ¸é µË´Ï´Ù. ±× ¹æ¹ýÀº ¾Æ·¡¿¡¼ ¼³¸íÇϵµ·Ï ÇϰڽÀ´Ï´Ù.
¡Ø µ¿ÀÏÇÑ À̸§À¸·Î ¼¼¼Ç¿¡ ÀúÀåÇÏ°Ô µÇ¸é, Ç×»ó µ¤¾î ¾º¿ö Áý´Ï´Ù.
* Session ¿¡ ÀúÀåµÈ °ª »ç¿ëÇϱâ
¸ÕÀú ¿¹Á¦ ¼Ò½º¸¦ »ìÆì º¸°Ú½À´Ï´Ù.
| Enumeration e=session.getAttributeNames();
String name="";
while(e.hasMoreElements()){
name=(String)e.nextElement();
out.print(name + " = " + ((Integer)session.getAttribute(name)).intValue());
}
|
óÀ½ºÎÅÍ ³Ê¹« ¾î·Á¿î°Å ¾Æ´ÑÁö ¸ð¸£°Ú±º¿ä.. ù¹øÂ° ¶óÀκÎÅÍ »ìÇ¥ º¾½Ã´Ù.. ¸Õ¼ Enumeration À̶ó´Â °´Ã¼´Â java.util ÆÐŰÁö¿¡ Á¤ÀÇ µÇ¾î ÀÖÀ¸¹Ç·Î »ç¿ëÇÏ·Á¸é java.util.* or java.util.Enumeration À» import ½ÃÄÑ¾ß ÇÕ´Ï´Ù.
Enumeration °´Ã¼´Â ´Ù¸¥ °´Ã¼µéÀ» ÀúÀå ÇÏ´Â °´Ã¼·Î °´Ã¼·Î, Vector¿Í´Â ´Þ¸® ´Ü¼øÈ÷ ÀúÀ常À» ÇÏ°Ô µÇ¸ç, ¸¸¾à Session ¿¡ ÀúÀåµÈ µ¥ÀÌÅͰ¡ º¯°æµÇ¸é ´Ù½Ã Enumeration °´Ã¼·Î ¹Ýȯ ÇØ¾ß ÇÕ´Ï´Ù. (Ãß°¡ ÇÒ¼ö´Â ¾øÀ½)
getAttributeNames()´Â ¼¼¼ÇÀÇ À̸§µéÀ» Enumeration typeÀ¸·Î ¹ÝȯÇÏ¿© ÁÝ´Ï´Ù. while ¹®ÀÇ Á¶°ÇÀ» »ìÇ¥ º¸¸é hasMoreElements() ¸¦ »ç¿ëÇÏ¿´½À´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ÇöÀç Element¸¦ Æ÷ÇÔÇϰí ÀÖ´ÂÁö °Ë»ç ÇÏ¿©, boolean ÇüÅÂÀÇ µ¥ÀÌÅÍ·Î ¸®ÅÏÇÏ¿© ÁÝ´Ï´Ù.
ÀÚ.. °¡Àå Áß¿äÇÑ getAttribute() ¸Þ¼Òµå¸¦ »ìÆì º¾½Ã´Ù. ÀÌ ¸Þ¼Òµå´Â nextElement() ¿¡ ÀÇÇØ¼ ¹Þ¾Æ¿Â nameÀ» ÀÌ¿ëÇÏ¿©, ¼¼¼Ç¿¡ ÀúÀåµÇ¾î ÀÖ´Â °ª(value)¸¦ ²¨³» ¿À°Ô µË´Ï´Ù. ÇöÀç ÀúÀåµÇ¾î ÀÖ´Â Çü½ÄÀÌ Integer typeÀÇ µ¥ÀÌÅÍÀÓÀ¸·Î Integer Çü½ÄÀ¸·Î ¸ÕÀú ij½ºÆÃÀ» ÇѵÚ(Integer) inValue()¸Þ¼Òµå¸¦ »ç¿ëÇÏ¿© int typeÀ¸·Î ¹Ù²Ù¾î ÁÝ´Ï´Ù.
À§¿Í °°Àº Çü½ÄÀ¸·Î loop¸¦ µ¹¸®¸é¼ ÀúÀåµÈ °ªÀ» ã¾Æ ¿Â´Ù¸é, ¼îÇÎīƮ¸¦ ¸¸µé°í ±× ¸®½ºÆ®¸¦ Ãâ·ÂÇϴµ¥ À¯¿ëÇÏ°Ô »ç¿ëµÉ °ÍÀ̶ó »ý°¢ µË´Ï´Ù. |