ÇϳªÀÇ ¼ºí¸´ÀÌ ¼ºí¸´ ÄÁÅ×ÀÌ³Ê¿Í Åë½ÅÇϱâ À§Çؼ »ç¿ëµÇ¾îÁö´Â ¸Þ¼µåµéÀ» °¡Áö°í Àִ Ŭ·¡½º°¡ ¹Ù·Î ServletContextÀÔ´Ï´Ù. ÇÏÁö¸¸ ServletContextÀÚüÀÇ Àǹ̸¦ ¾ËÁö ¸øÇÏ¸é ´Ü¼øÈ÷ ¼ºí¸´ ÄÁÅ×ÀÌ³Ê¿Í Åë½ÅÇÏ¿© ¼ºí¸´ÀÇ Á¤º¸¸¦ ¾ò´Â´Ù´Â °á·Ð ¹Û¿¡ ¾òÁö ¸øÇÕ´Ï´Ù.
ÇϳªÀÇ web application ³»¿¡ ÇϳªÀÇ ÄÁÅØ½ºÆ®°¡ Á¸ÀçÇÕ´Ï´Ù. ¿©·¯ºÐÀº ÀÌ¹Ì web applicationÀ̶õ Àǹ̸¦ 1Àå¿¡¼ ¹è¿ü½À´Ï´Ù. webÀÇ ÇÁ·Î±×·¥ÀûÀÎ Àǹ̴ µð·ºÅ丮 °³³äÀ¸·Î ¼ºí¸´ ÄÁÅ×ÀÌ³Ê ³»¿¡¼ ¾ÖÇø®ÄÉÀÌ¼Ç ´ÜÀ§·Î ¼ºí¸´À» °ü¸®ÇÏ°Ô µÇ¸ç ÇϳªÀÇ ¾ÖÇø®ÄÉÀ̼ǿ¡¼ Áï, web application³»¿¡ ÀÖ´Â ¸ðµç ¼ºí¸´µéÀ» °ü¸®Çϸç Á¤º¸°øÀ¯ÇÒ ¼ö ÀÖ°Ô µµ¿Í ÁÖ´Â ¿ªÇÒÀ» ´ã´çÇÏ´Â ³ðÀÌ ¹Ù·Î ServletContextÀÔ´Ï´Ù. ½±°Ô ¸»Çϸé À¥ ¾ÖÇø®ÄÉÀ̼ÇÀÇ µî·ÏÁ¤º¸ Á¤µµ·Î »ý°¢Çϸé ÁÁÀ» °ÍÀÔ´Ï´Ù. ÀÌ¿Í °°Àº °ü°è¸¦ ±×¸²À¸·Î ³ªÅ¸³»¸é ¾Æ·¡¿Í °°½À´Ï´Ù.

¼ºí¸´ÀÇ Á¤º¸¸¦ ÃßÃâÇÏ·Á¸é ServletContainer¿¡ Á¢±ÙÇØ¾ß Çϴµ¥ ÀÌ·¯ÇÑ Á¢±ÙÀ» °¡´ÉÇÏ°Ô ÇØ ÁÖ´Â °ÍÀÌ ¹Ù·Î ServletContextÀÔ´Ï´Ù. ¼ºí¸´À» ÇϳªÇϳª¿¡ Á¢±ÙÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó ¾ÖÇø®ÄÉÀÌ¼Ç ´ÜÀ§·Î Á¢±ÙÇÏ°Ô ÇÏ´Â °ÍÀÔ´Ï´Ù. »ç½Ç ¿©·¯ºÐÀº ¼ºí¸´ Çϳª¿¡ ContextÇϳª¾¿ Á¸ÀçÇÑ´Ù°í »ý°¢ÇÏÁö¸¸ À¥ ¾ÖÇø®ÄÉÀÌ¼Ç ³»¿¡¼´Â °øÀ¯ÇÏ°Ô µÇ´Â °ÍÀÔ´Ï´Ù. ServletContext¸¦ ¾ò¾î³»´Â ¹æ¹ýÀº ´ÙÀ½°ú °°½À´Ï´Ù.
ServletContext¸¦ ¾ò´Â ¹æ¹ý
n ServletContext´Â ServletConfigÀÇ getServletContext() »ç¿ëÇÏ¿© ¾ò´Â´Ù.
n ¼ºí¸´Àº HttpServletÀ» »ó¼ÓÇÑ´Ù. ±×¸®°í HttpServletÀº ServletConfig¸¦ ±¸ÇöÇϰí Àֱ⠶§¹®¿¡ getServletContext() ¸Þ¼µå¸¦ ¹Ù·Î ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù.
n ServletContext sc = getServletContext(); //¼ºí¸´ ³»¿¡¼ »ç¿ë°¡´É
°³³äÀûÀÎ ¼³¸íÀº ÀÌÂë¿¡¼ ³¡³»°í ServletContext¸¦ ½ÇÁ¦ »ç¿ëÇÏ´Â °÷Àº ¹Ù·Î ¼ºí¸´ÀÇ Á¤º¸¸¦ ÃßÃâÇÏ´Â ¿ëµµ·Î ¸¹ÀÌ »ç¿ëÇÕ´Ï´Ù. ¼ºí¸´Àº ¼¹öÃøÀÇ ÇÁ·Î¼¼½ºÀÇ ¹üÁÖ ³»¿¡¼ »ý¼º°ú ¼Ò¸êµË´Ï´Ù. ÀÌ·¯ÇÑ ¼ºí¸´¿¡¼´Â ÃʱâÈ Á¤º¸¸¦ ¾ò°Å³ª ½ÇÇàȯ°æ¿¡ ´ëÇÑ Á¤º¸¸¦ ¾ò¾î ³¾ ¼ö ÀÖ½À´Ï´Ù. ¼ºí¸´ ÃʱâÈ Á¤º¸´Â ¼ºí¸´ÀÌ ½ÃÀÛ µÇ´Â ½Ã±â¿¡ »ç¿ëÀÌ °¡´ÉÇϰí, ½ÇÇàȯ°æ¿¡ ´ëÇÑ Á¤º¸´Â ¼ºí¸´ÀÌ ½ÇÇà ÁßÀ̶ó¸é ¾ðÁ¦³ª ÀÌ¿ëÀÌ °¡´ÉÇÏ´Ù. ´ÙÀ½Àº ÀÌ·¯ÇÑ Á¤º¸µéÀ» ÃßÃâÇÏ´Â ¿¹¸¦ º¸¿© ÁÖ°í ÀÖ½À´Ï´Ù.
ServletContext¿¡¼ ÀÛ¾÷ÀÇ ¿¹
n ÆÄÀÏÀÇ MIME ŸÀÔÀ» ¾ò´Â ÀÏ à getMimeType()
n a log file¿¡ ±â·ÏÇÏ´Â ÀÏ à log()
n ¼ºí¸´ ÀÚüÀÇ Á¤º¸¸¦ ¾ò¾î³»´Â ÀÏ à getServletInfo()
n ¼ºí¸´ÀÇ °¡»óµð·ºÅ丮»óÀÇ ½ÇÁ¦ °æ·Î¸¦ ¾ò´Â ÀÏ à getRealPath()
n ¼ºí¸´ÀÇ ¹öÀüÈ®ÀÎ à getMajorVersion(),getMinorVersion()
À§¿¡¼ ¾ð±ÞÇÑ ¿¹¸¦ ½ÇÁ¦ Àû¿ëÇÑ ¿¹¸¦ »ìÆì º¸±â·Î ÇϰڽÀ´Ï´Ù.
|
ServletContextTest.java |
ServletContextÀÇ Á¤º¸¸¦ ¾ò´Â ¿¹Á¦ |
|
| |
|
| |
À§ÀÇ ¿¹Á¦´Â ServletContext¸¦ Å×½ºÆ®ÇÏ´Â ¿¹Á¦ÀÔ´Ï´Ù. ¾Õ¿¡¼ ¼³¸íÇÑ ±â´ÉµéÀ» ¸ð¾Æ¼ ¿¹Á¦·Î ¸¸µé¾î º¸¾Ò½À´Ï´Ù. ¿ì¼± ServletÀº HttpServlet Ŭ·¡½º¸¦ »ó¼Ó ¹Þ°Ô µÇ¾îÀÖ½À´Ï´Ù. ±×·±µ¥ ServletContext °´Ã¼¸¦ ¾òÀ» ¼ö ÀÖ´Â ¸Þ¼µå´Â HttpServlet Ŭ·¡½º¿¡ ÀÖ½À´Ï´Ù. ¹Ù·Î getServletContext¸Þ¼µåÀÔ´Ï´Ù. Áï ¸ðµç ServletÀº ServletContext °´Ã¼¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù°í ¾Õ¿¡¼ ¼³¸í Çß½À´Ï´Ù. ÀÌ·¸°Ô ServletContextÀÇ °´Ã¼ servletContext¸¦ ¾ò¾î³½ ÈÄ, À§¿¡¼ ¼³¸íÇÑ ±â´ÉµéÀ» Å×½ºÆ®ÇÏ¿´½À´Ï´Ù.
n ServletContext servletContext = this.getServletContext();
óÀ½¿¡´Â ÆÄÀÏÀÇ MIME°ªÀ» ¾ò¾î¿À´Â ¿¹Á¦ÀÔ´Ï´Ù. ¿ì¼± java_logo.jpg¶ó´Â ÆÄÀÏÀ» ServletContextTest.java ÆÄÀÏÀÌ À§Ä¡ÇÑ °÷¿¡ ³Ö¾î µÎ¾ú½À´Ï´Ù. ÀÌ·± ÈÄ getMimeType ¸Þ¼µå¸¦ È£ÃâÇÏ¿© Ãâ·ÂÇÏ¿´´õ´Ï image/jpeg¶ó´Â °á°ú°ªÀ» Ãâ·ÂÇÏ¿´½À´Ï´Ù.
n String mimeType = servletContext.getMimeType("java_logo.jpg");
±× ÈÄ¿¡ log¸Þ¼µå¸¦ È£ÃâÇÏ¿´½À´Ï´Ù. ÀÌ log¸Þ¼µå´Â Jakarta(ȤÀº Catalina)¾Æ·¡¿¡ À§Ä¡ÇÑ Logs Æú´õ¸¦ ¿¾î º¸¸é À§Ä¡ÇÑ logÆÄÀÏ¿¡ ¸Þ½ÃÁö¸¦ ³²±â´Â ¿ªÇÒÀ» ÇÕ´Ï´Ù. ¾Æ·¡ ±×¸²Àº log ÆÄÀÏ¿¡ ÀûÈù °ÍÀ» ĸÃÄÇÑ ±×¸²ÀÔ´Ï´Ù. ÀÌ·¸°Ô ÀڱⰡ ¿øÇÏ´Â ¸Þ½ÃÁö¸¦ logÆÄÀÏ¿¡ ±â·ÏÇÒ ¼ö ÀÖ½À´Ï´Ù.
n servletContext.log("*******************Log FileTest***********************");

±×¸®°í ±× ´ÙÀ½¿¡´Â ServerÀÇ Á¤º¸¸¦ ¾Ë¾Æ¿À´Â ¸Þ¼µå, ServletÀÇ ½ÇÁ¦ °æ·Î¸¦ ¾Ë¾Æ³»´Â ¸Þ¼µå, MajorVersion°ú MinorVersionÀ» ¾Ë¾Æ¿À´Â ¸Þ¼µå¸¦ Å×½ºÆ® ÇÏ¿´½À´Ï´Ù.
°á°ú ȸ鿡 ³ª¿Â °Í ó·³ ³ª¿À´Â °ÍÀ» È®ÀÎÇÒ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.
n int majorVersion = servletContext.getMajorVersion();
n out.print("<B>MajorVersion - </B> "+majorVersion+"<br><br>");
n int minorVersion = servletContext.getMinorVersion();
n out.print("<B>MinorVersion - </B> "+minorVersion+"<br><br>");
´ÙÀ½Àº ¼ºí¸´ÀÌ ¼ºí¸´ ¿£Áø°ú Åë½ÅÇϱâ À§ÇØ »ç¿ëÇÒ ¼ö ÀÖ´Â ¸Þ¼µå¸¦ Á¤ÀÇÇϰí ÀÖ½À´Ï´Ù.
|
ServletContextÀÇ ¸Þ¼µå |
|
|
Object getAttribute(java.lang.String name): ÁÖ¾îÁø À̸§ÀÇ ¼ºí¸´ ÄÁÅ×ÀÌ³Ê ¼Ó¼ºÀ» ¾ò½À´Ï´Ù. Enumeration getAttributeNames(): ¼ºí¸´ ÄÁÅ×À̳ÊÀÇ ¼Ó¼º¿¡ ´ëÇØ À̸§µéÀ» Enumeration °´Ã¼·Î ¾ò½À´Ï´Ù. void removeAttribute(java.lang.String name): ¼ºí¸´ ÄÁÅØ½ºÆ®(contect)·ÎºÎÅÍ ÁÖ¾îÁø À̸§ÀÇ ¼Ó¼ºÀ» Á¦°ÅÇÕ´Ï´Ù. void setAttribute(java.lang.String name, java.lang.Object object): ¼ºí¸´ ÄÁÅØ½ºÆ®(context)¿¡ ÁÖ¾îÁø À̸§ÀÇ ¼Ó¼ºÀ» Ãß°¡ÇÕ´Ï´Ù. ServletContext getContext(java.lang.String uripath): ÁÖ¾îÁø ¼¹ö»óÀÇ URL¿¡ ÇØ´çÇÏ´Â ServletContext °´Ã¼¸¦ ¾ò½À´Ï´Ù. int getMajorVersion(): À¥ ¼¹ö°¡ Áö¿øÇÏ´Â ÀÚ¹Ù ¼ºí¸´ APIÀÇ major versionÀ» ¾ò½À´Ï´Ù. int getMinorVersion():À¥ ¼¹ö°¡ Áö¿øÇÏ´Â ÀÚ¹Ù ¼ºí¸´ APIÀÇ minor versionÀ» ¾ò½À´Ï´Ù. String getMimeType(java.lang.String file): ¹®ÀÚ¿·Î ÁÖ¾îÁø ÆÄÀÏ¿¡ ´ëÇÑ MIME ŸÀÔÀ» ¾ò½À´Ï´Ù. String getRealPath(java.lang.String path): ÁÖ¾îÁø °¡»ó µð·ºÅ丮ÀÇ ½ÇÁ¦ °æ·Î¸¦ ¾ò½À´Ï´Ù. RequestDispatcher getRequestDispatcher(java.lang.String urlpath): ÁÖ¾îÁø °æ·Î¿¡ À§Ä¡¿¡ ÀÖ´Â ÀÚ¿øÀ» À§ÇÑ wrapper·Î ÀÛµ¿ÇÏ´Â RequestDispatcher °´Ã¼¸¦ ¾ò½À´Ï´Ù. URL getResource(java.lang.String path): ÁÖ¾îÁø °æ·Î¿¡ ¸ÅÇεǴ ÀÚ¿øÀ» ¾ò½À´Ï´Ù. InputStream getResourceAsStream(java.lang.String path): ÁÖ¾îÁø °æ·Î¿¡ ¸ÅÇεǴ ÀÚ¿øÀ¸·ÎºÎÅÍ ÀԷ¹ÞÀ» ¼ö ÀÖ´Â ÀÔ·Â ½ºÆ®¸²À» ¾ò½À´Ï´Ù. Enumeration getServlets(): ÀÚ¹Ù ¼ºí¸´ API 2.0¿¡¼ºÎÅÍ´Â Á¦°ÅµÇ¾ú½À´Ï´Ù. void log(java.lang.Exception exception, java.lang.String msg): ÀÚ¹Ù ¼ºí¸´ API 2.1¿¡¼ºÎÅÍ´Â log(String message, Throwable throwable) ¸Þ¼Òµå·Î ¹Ù²î¾ú½À´Ï´Ù. void log(java.lang.String msg): ¼ºí¸´ ·Î±× ÆÄÀÏ¿¡ ÁÖ¾îÁø ¸Þ½ÃÁö¸¦ ±â·ÏÇÕ´Ï´Ù. ÀϹÝÀûÀ¸·Î À̺¥Æ® ·Î±×ÀÔ´Ï´Ù. void log(java.lang.String message, java.lang.Throwable throwable): ½ºÅÃÀÇ ³»¿ë°ú ÁÖ¾îÁø ¿¹¿Ü°¡ °¡Áö´Â È®Àå ¸Þ½ÃÁö¸¦ ¼ºí¸´ ·Î±× ÆÄÀÏ¿¡ ±â·ÏÇÕ´Ï´Ù. String getServerInfo(): ¼ºí¸´ÀÌ ½ÇÇàµÇ°í ÀÖ´Â ¼ºí¸´ ÄÁÅ×À̳ÊÀÇ À̸§°ú ¹öÀüÀ» ¾ò½À´Ï´Ù. Servlet getServlet(java.lang.String name): ÀÚ¹Ù ¼ºí¸´ API 2.1¿¡¼ºÎÅÍ´Â Á¦°ÅµÇ¾ú½À´Ï´Ù. Enumeration getServletNames(): ÀÚ¹Ù ¼ºí¸´ API 2.1¿¡¼ºÎÅÍ´Â Á¦°ÅµÇ¾ú½À´Ï´Ù. | |
| jabookÀúÀÚ¸íÇÔ |
|
Á¦¸ñ:¼Ò¼³°°ÀºJSP1ºÎ ÀúÀÚ:ÃÖ¿µ°ü |