¼Ò¼³°°ÀºJSP1ºÎ  4Àå Core of Servlet  04 ServletRequest¿Í HttpServletRequestÀÇ ±¸ºÐ  

 

04 ServletRequest¿Í HttpServletRequestÀÇ ±¸ºÐ

 

 ServletRequest´Â ±âº»ÀûÀΠŬ¶óÀÌ¾ðÆ® ¿äû¿¡ °üÇÑ ¸ðµç Á¤º¸¸¦ °¡Áö°í ÀÖ½À´Ï´Ù. ±×¸®°í ÀÌ ÀÎÅÍÆäÀ̽º´Â ´Ù½Ã HttpServletRequest·Î È®ÀåÇÏ¿© HTTPÇÁ·ÎÅäÄݻ󿡼­ ÇÒ ¼ö ÀÖ´Â ÀϵéÀÌ Æ÷ÇԵǾîÁ® ÀÖ½À´Ï´Ù. ÀÌ HttpServletRequest´Â ¼­ºí¸´ÀÇ serviceÀÇ ¸Å°³º¯¼öÀÇ Çϳª·Î ¼­ºí¸´ ÇÁ·Î±×·¡¸Ó°¡ Ŭ¶óÀ̾ðÆ®ÀÇ ¿äû¿¡ °üÇÑ ÀÛ¾÷µéÀ» ÇÚµéÇÒ ¼ö ÀÖµµ·Ï ÇÏ´Â Áß¿äÇÑ ¿ªÇÒÀ» ´ã´çÇϰí ÀÖ½À´Ï´Ù. ServletRequestÀÎÅÍÆäÀ̽ºÀÇ ±¸Á¶¸¦ »ìÆìº¸¸é ´ÙÀ½°ú °°Àº ºÎºÐÀ¸·Î ³ª´­ ¼ö ÀÖ½À´Ï´Ù.

 

ServletRequestÀÇ ±¸Á¶

n        Ŭ¶óÀÌ¾ðÆ® ÀÚü¿¡ ´ëÇÑ Á¤º¸ÃßÃâ

n        Ŭ¶óÀÌ¾ðÆ®°¡ Àü¼ÛÇÑ Á¤º¸ ÃßÃâ

 

 ÀÌ·¯ÇÑ ±¸Á¶¿¡ µû¶ó¼­ ServletRequestÀÇ ¸Þ¼­µå¸¦ ºÐ·ùÇØ º¸¸é ´ÙÀ½°ú °°½À´Ï´Ù.

 

ServletRequestÀÇ ¸â¹ö¸Þ¼­µå

Ŭ¶óÀÌ¾ðÆ® ÀÚü¿¡ ´ëÇÑ Á¤º¸ÃßÃâ

Object getAttribute(String name): ÁÖ¾îÁø À̸§À» °®´Â ¼Ó¼º°ªÀ» ¾ò½À´Ï´Ù.

Enumeration getAttributeNames(): ÀÌ ¿äûÀÌ °®´Â ¼Ó¼ºµéÀÇ À̸§¿¡ ´ëÇÑ Enumeration °´Ã¼¸¦ ¾ò½À´Ï´Ù.

void setAttribute(String key, Object o): ÁÖ¾îÁø À̸§ÀÇ ¼Ó¼ºÀ» ¼³Á¤ÇÕ´Ï´Ù.

void remvoeAttribute(String key): ÁÖ¾îÁø À̸§ÀÇ ¼Ó¼ºÀ» Á¦°ÅÇÕ´Ï´Ù.

String getProtocol(): "HTTP/1.1" °ú °°Àº Çü½ÄÀ¸·Î ÇÁ·ÎÅäÄÝ ¹× major/minor ¹öÀüÀ» ¾ò½À´Ï´Ù.

String getRemoteAddr(): ¿äûÇÑ Å¬¶óÀ̾ðÆ®ÀÇ IP(Internet Protocol) ÁÖ¼Ò¸¦ ¾ò½À´Ï´Ù.

String getRemoteHost(): ¿äûÇÑ Å¬¶óÀ̾ðÆ®ÀÇ È£½ºÆ® À̸§À» ¾ò½À´Ï´Ù.

String getScheme(): http, https, ¶Ç´Â ftp µî°ú °°Àº ¿äûÀ» À§ÇØ »ç¿ëµÈ ¹æ¹ýÀÇ À̸§À» ¾ò½À´Ï´Ù.

String getServerName(): ¿äûÀ» ¹ÞÀº ¼­¹öÀÇ À̸§À» ¾ò½À´Ï´Ù.

int getServerPort(): ¿äûÀ» ¹ÞÀº Æ÷Æ® ¹øÈ£¸¦ ¾ò½À´Ï´Ù.

 

ServletRequestÀÇ ¸â¹ö¸Þ¼­µå

Ŭ¶óÀÌ¾ðÆ®°¡ Àü¼ÛÇÑ Á¤º¸ÃßÃâ

String getCharacterEncoding(): ÀÌ ¿äû¿¡ »ç¿ëµÈ ¹®ÀÚ ÀÎÄÚµùÀ» ¾ò½À´Ï´Ù.

int getContentLength(): ÀÌ ¿äû¿¡ Æ÷ÇԵǾî ÀÖ´Â µ¥ÀÌÅÍÀÇ ±æÀ̸¦ ±¸Çϸç, ¸¸¾à ±æÀ̸¦ ¾Ë ¼ö ¾ø´Â °æ¿ì¿¡´Â ?1ÀÌ ¸®Åϵ˴ϴÙ.

String getContentType(): ¿äû¿¡ Æ÷ÇԵǾî ÀÖ´Â ³»¿ë¿¡ ´ëÇÑ MIME ŸÀÔ ¶Ç´Â ¸ð¸¦ °æ¿ì¿¡´Â nullÀ» ¾ò½À´Ï´Ù.

Enumeration getParameterNames(): ¸Å°³º¯¼öµéÀÇ À̸§¿¡ ´ëÇÑ Enumeration °´Ã¼¸¦ ¾ò½À´Ï´Ù.

String getParameter(String name): ÁÖ¾îÁø À̸§ÀÇ ¸Å°³º¯¼ö°¡ °®´Â °ªÀ» ¾ò½À´Ï´Ù.

String[] getParameterValues(String name): ÁÖ¾îÁø À̸§À¸·Î Àü´ÞµÈ ¸Å°³º¯¼ö°¡ °®´Â ¸ðµç °ªÀ» ¹®ÀÚ¿­ ¹è¿­·Î ¾ò½À´Ï´Ù. ¸Å°³º¯¼ö°¡ ´ÙÁß ¼±ÅÃÀÌ °¡´ÉÇÑ ¸®½ºÆ®(list) ¶Ç´Â ¼±Åùڽº(choicebox)ÀÇ °ªÀ̶ó¸é, ¿©·¯ °³ÀÇ °ªÀÌ ÇϳªÀÇ À̸§À¸·Î Àü´ÞµÉ ¼ö ÀÖ½À´Ï´Ù.

BufferedReader getReader(): ¿äû ¹Ùµð·ÎºÎÅÍ ¹®ÀÚ ÀÎÄÚµù¿¡ µû¶ó ÅØ½ºÆ®¸¦ ÀоîµéÀ̱â À§ÇÑ BufferedReader °´Ã¼¸¦ ¾ò½À´Ï´Ù.

ServletInputStream getInputStream(): ÀÌ ¿äûÀÇ ¹Ùµð·ÎºÎÅÍ ¹ÙÀ̳ʸ® µ¥ÀÌÅ͸¦ ÀоîµéÀ̱â À§ÇØ, ÇÑ ¹ø¿¡ ÇÑ ¶óÀξ¿ ÀÐÀ» ¼ö ÀÖ´Â ServletInputStream °´Ã¼¸¦ ¾ò½À´Ï´Ù.

 

ÀÌ¿Í °°Àº ¸Þ¼­µåµéÀº HTTP ÇÁ·ÎÅäÄÝ¿¡ ¸ÂÃß¾îÁ® ÀÖ´Â °ÍÀÌ ¾Æ´Ï¶ó ÀϹÝÀûÀÎ ³×Æ®¿÷ Åë½Å±â¹Ý¿¡ ÀÇÇØ¼­ »ç¿ëµÇ´Â ¸Þ¼­µåÀÔ´Ï´Ù. ±×·¡¼­ HTTPÇÁ·ÎÅäÄÝ¿¡ Á¸ÀçÇÏ´Â Session°ú Cookie°°Àº Á¤º¸¸¦ ÃßÃâÇÏ´Â ÀÛ¾÷Àº ÇÒ ¼ö ¾ø½À´Ï´Ù. ±×·¸±â ¶§¹®¿¡ HTTPÇÁ·ÎÅäÄÝÀ» Áö¿øÇÏ´Â HttpServletRequest¿¡¼­´Â ´ç¿¬È÷ HTTPÇÁ·ÎÅäÄÝ¿¡ »ç¿ëµÇ´Â ´ëºÎºÐÀÇ ±â´ÉÀ» Æ÷ÇÔÇϰí ÀÖ½À´Ï´Ù. HTTPÇÁ·ÎÅäÄݻ󿡼­ »ç¿ëµÇ´Â ±â´Éº°·Î ºÐ·ùÇØ º¸¸é ´ÙÀ½°ú °°½À´Ï´Ù.

 

HttpServletRequestÀÇ ±â´Éº° ºÐ·ù

n        request°´Ã¼ÀÇ ¿äû ÆÄ¶ó¹ÌÅÍ

n        request°´Ã¼ÀÇ HTTP Çì´õ

n        request°´Ã¼ÀÇ ¼¼¼Ç µ¥ÀÌÅÍ

n        request°´Ã¼ÀÇ ÄíŰ

n        request°´Ã¼ÀÇ ¿äû¿¡ »ç¿ëµÈ URL/URI

 

ÀÌ·¯ÇÑ ºÐ·ù¿¡ µû¶ó ¸Þ¼­µå¸¦ ³ª´©¾î º¸¸é ´ÙÀ½°ú °°½À´Ï´Ù.

 

request°´Ã¼ÀÇ ¿äû ÆÄ¶ó¹ÌÅÍ

public String getParameter(String name) : ÁÖ¾îÁø À̸§ÀÇ ¸Å°³º¯¼ö°¡ °®´Â °ªÀ» ¾ò½À´Ï´Ù. ÁöÁ¤µÈ À̸§ÀÇ ÆÄ¶ó¹ÌÅͰ¡ Á¸ÀçÇÏÁö ¾ÊÀ» °æ¿ì nullÀ» ¹ÝȯÇÕ´Ï´Ù.

public Enumeration getParameterNames(): ¸Å°³º¯¼öµéÀÇ À̸§¿¡ ´ëÇÑ EnumerationÀ¸·Î ¹ÝȯÇÕ´Ï´Ù.

public String[] getParameterValues(String name) : ÁÖ¾îÁø À̸§À¸·Î Àü´ÞµÈ ¸Å°³º¯¼ö°¡ °®´Â ¸ðµç °ªÀ» ¹®ÀÚ¿­ ¹è¿­·Î ¾ò½À´Ï´Ù. ¸Å°³º¯¼ö°¡ ´ÙÁß ¼±ÅÃÀÌ °¡´ÉÇÑ ¸®½ºÆ®(list) ¶Ç´Â ¼±Åùڽº(choicebox)ÀÇ °ªÀ̶ó¸é, ¿©·¯ °³ÀÇ °ªÀÌ ÇϳªÀÇ À̸§À¸·Î Àü´ÞµÉ ¼ö ÀÖÁö¸¸ ¸Å°³º¯¼ö°¡ ÇϳªÀÇ °ªÀ» °®´Â °æ¿ì¶ó¸é getParameter(String name)¸¦ »ç¿ëÇÏ´Â °ÍÀÌ ³´½À´Ï´Ù.

 

 

request°´Ã¼ÀÇ HTTP Çì´õ

public String getHeader(String headerName) : HTTP ¿äûÇì´õ¿¡ ÁöÁ¤µÈ headerNameÀÇ °ªÀ» ¹®ÀÚ¿­·Î ¹ÝȯÇÕ´Ï´Ù. ¸¸¾à HTTP ¿äûÇì´õ¿¡ headerNameÀÇ °ªÀÌ Á¸ÀçÇÏÁö ¾Ê´Â´Ù¸é nullÀ» ¹ÝȯÇÕ´Ï´Ù.

public Enumeration getHeaderNames() : HTTP ¿äûÇì´õ¿¡ Æ÷ÇÔµÈ ¸ðµç Çì´õÀÇ À̸§À» EnumerationÀ¸·Î ¹ÝȯÇÕ´Ï´Ù.

public Enumeration getHeaders (String headerName) : HTTP ¿äûÇì´õ¿¡ Æ÷ÇÔµÈ headerNameÀÇ ¸ðµç °ªÀ» EnumerationÀ¸·Î ¹ÝȯÇÕ´Ï´Ù.

public int getIntHeader (String headerName) : HTTP ¿äûÇì´õ¿¡ Æ÷ÇÔµÈ headerNameÀÇ °ªÀ» int·Î ¹ÝȯÇÕ´Ï´Ù. ÁöÁ¤µÈ headerNameÀÇ °ªÀ» int·Î º¯È¯ ÇÒ ¼ö ¾ø´Â °æ¿ì NumberFormatExceptionÀÌ ¹ß»ýÇϰí headerName Çì´õ°¡ HTTP ¿äûÇì´õ¿¡ Á¸ÀçÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â –1À» ¹ÝȯÇÕ´Ï´Ù.

public long getIDateHeader (String headerName) : HTTP ¿äûÇì´õ¿¡ Æ÷ÇÔµÈ headerNameÀÇ °ªÀ» millisecond º¯È¯ÇÏ¿© longÀ¸·Î ¹ÝȯÇÕ´Ï´Ù. ÁöÁ¤µÈ headerNameÀÇ °ªÀ» int·Î º¯È¯ ÇÒ ¼ö ¾ø´Â °æ¿ì IllegalArgumentExceptionÀÌ ¹ß»ýÇϰí headerName Çì´õ°¡ HTTP ¿äûÇì´õ¿¡ Á¸ÀçÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â –1À» ¹ÝȯÇÕ´Ï´Ù.

 

request°´Ã¼ÀÇ ¼¼¼Ç µ¥ÀÌÅÍ 

public HttpSession getSession() : ¿äûÀ» ½ÃµµÇÑ Å¬¶óÀÌ¾ðÆ®¿¡ ÁöÁ¤µÈ HttpSession °´Ã¼¸¦ ¾ò½À´Ï´Ù.  ÀÌÀü¿¡ »ý¼ºµÈ HttpSession °´Ã¼°¡ ¾ø¾ú´Ù¸é »õ·Î¿î ¼¼¼Ç °´Ã¼¸¦ »ý¼ºÇÕ´Ï´Ù. 

public HttpSession getSession(boolean create) : ¿äûÀ» ½ÃµµÇÑ Å¬¶óÀÌ¾ðÆ®¿¡ ÁöÁ¤µÈ HttpSession °´Ã¼¸¦ ¾ò½À´Ï´Ù. create°¡ false·Î ÁöÁ¤µÈ °æ¿ì ÇØ´ç Ŭ¶óÀÌ¾ðÆ®¿¡ ´ëÇØ »ý¼ºµÈ HttpSession °´Ã¼°¡ ¾ø´Â °æ¿ì nullÀ» ¹ÝȯÇÕ´Ï´Ù. create°¡ treu·Î ÁöÁ¤µÈ °æ¿ì ÀÌ¹Ì »ý¼ºµÈ HttpSession °´Ã¼¸¦ ¹ÝȯÇÏ°í ¸¸¾à ÇØ´ç Ŭ¶óÀÌ¾ðÆ®¿¡ »ý¼ºµÈ HttpSession °´Ã¼°¡ ¾ø´Â °æ¿ì »õ·Î¿î ¼¼¼Ç °´Ã¼¸¦ »ý¼ºÇÏ¿© ¸®ÅÏÇÕ´Ï´Ù.

public String getRequestedSessionId(): ¿äûÀ» ½ÃµµÇÑ Å¬¶óÀ̾ðÆ®ÀÇ ¼¼¼Ç id¸¦ ¹®ÀÚ¿­·Î ¹ÝȯÇÕ´Ï´Ù.

public String isRequestedSessionId() : ¿äûÀ» ½ÃµµÇÑ Å¬¶óÀ̾ðÆ®ÀÇ ¼¼¼Ç id°¡ À¯È¿Çϸé true ¾Æ´Ï¸é false¸¦ ¸®ÅÏÇÕ´Ï´Ù.

isRequestedSessionIdFromCookie() : ¿äûÀ» ½ÃµµÇÑ Å¬¶óÀ̾ðÆ®ÀÇ ¼¼¼Ç id°¡ ÄíŰ·Î Àü´ÞµÈ °æ¿ì true ¾Æ´Ï¸é false¸¦ ¸®ÅÏÇÕ´Ï´Ù.

isRequestedSessionIdFromURL() : ¿äûÀ» ½ÃµµÇÑ Å¬¶óÀ̾ðÆ®ÀÇ ¼¼¼Ç id°¡ URL¿¡ Æ÷ÇÔµÈ °æ¿ì true ¾Æ´Ï¸é false¸¦ ¸®ÅÏÇÕ´Ï´Ù.

 

request°´Ã¼ÀÇ ÄíŰ 

public Cookie[] getCookies() : Ŭ¶óÀ̾ðÆ®ÀÇ ¿äû¿¡ Æ÷ÇÔµÈ Äí۸¦ Cookie¹è¿­·Î ¸®ÅÏÇÕ´Ï´Ù.

 

request°´Ã¼ÀÇ ¿äû¿¡ »ç¿ëµÈ URL/URI 

public String getRequestURI() : ¿äû¿¡ »ç¿ëµÈ URL·ÎºÎÅÍ URIºÎºÐÀ» ¹®ÀÚ¿­·Î ¸®ÅÏÇÕ´Ï´Ù.  

public String getQueryString():¿äû¿¡ »ç¿ëµÈ Äõ¸® ¹®ÀÚ¿­À» ¹®ÀÚ¿­·Î ¸®ÅÏÇÕ´Ï´Ù..

public String getMethod() : ¿äû¿¡ »ç¿ëµÈ ¿äû¹æ½ÄÀ» ¹®ÀÚ¿­·Î ¸®ÅÏÇÕ´Ï´Ù.



jabookÀúÀÚ¸íÇÔ
Á¦¸ñ:¼Ò¼³°°ÀºJSP1ºÎ
ÀúÀÚ:ÃÖ¿µ°ü