|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | constructor | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
java.lang.Objectjava.net.URI
public final class URI
URI (Uniform Resource Identifier) ÂüÁ¶¸¦ ³ªÅ¸³À´Ï´Ù.
´ÙÀ½¿¡ ³ªÅ¸³»´Â ¼Ò±Ô¸ðÀÇ º¯°æÀº µû·Î ÇØ, ÀÌ Å¬·¡½ºÀÇ ÀνºÅϽº´Â ¡¸RFC 2396: Uniform Resource Identifiers (URI): Generic Syntax¡¹·Î Á¤ÀǵǾRFC 2732: Format for Literal IPv6 Addresses in URLs¡¹·Î ¼öÁ¤µÈ URI ÂüÁ¶¸¦ ³ªÅ¸³À´Ï´Ù. ¸®ÅÍ·² IPv6 ÁÖ¼Ò Çü½Ä¿¡¼µµ, scope_ids°¡ Áö¿ø µË´Ï´Ù. scope_ids ±¸¹®°ú »ç¿ë ¹æ¹ýÀº¿©±â¼ ¼³¸íÇϰí ÀÖ½À´Ï´Ù. ÀÌ Å¬·¡½º´Â ÄÄÆÛ³ÍÆ®·ÎºÎÅÍ, ¶Ç´Â ij¸¯ÅÍ ¶óÀÎ Çü½ÄÀ» ÇØ¼®ÇØ URI ÀνºÅϽº¸¦ ÀÛ¼ºÇϱâ À§ÇÑ »ý¼ºÀÚ, ÀνºÅϽºÀÇ °¢Á¾ ÄÄÆÛ³ÍÆ®¿¡ ¾×¼¼½ºÇϱâ À§ÇÑ ¸Þ¼µå ¹× URI ÀνºÅϽº¸¦ Á¤±ÔÈ, ÇØ°á, »ó´ëÈÇϱâ À§ÇÑ ¸Þ¼µå¸¦ Á¦°øÇÕ´Ï´Ù. ÀÌ Å¬·¡½ºÀÇ ÀνºÅϽº´Â º¯°æÇÒ ¼ö ¾ø½À´Ï´Ù.
[schema:]schema °íÀ¯ ºÎºÐ[#fragment]¿©±â¼, ²©¼â¹À½ [...] ´Â ¿É¼ÇÀÇ ÄÄÆÛ³ÍÆ®¸¦ ³ªÅ¸³», : ¶ó°í #´Â ±× ¹®ÀÚ ÀÚü¸¦ ³ªÅ¸³À´Ï´Ù.
¡¸Àý´ë¡¹URI´Â schema¸¦ ÁöÁ¤ÇØ, Àý´ë°¡ ¾Æ´Ñ URI´Â ¡¸»ó´ë¡¹¶ó°í ºÒ¸³´Ï´Ù. ¶Ç, URI´Â ¡¸ºÒÅõ¸í¡¹ÀÏ±î ¡¸°èÃþÀû¡¹Àϱ ÀÇÇØ ºÐ·ùµË´Ï´Ù.
¡¸ºÒÅõ¸í¡¹URI´Â schema °íÀ¯ ºÎºÐÀÌ slash ( ¡¸/¡¹)·Î ½ÃÀÛµÇÁö ¾Ê´Â Àý´ë URI ÀÔ´Ï´Ù. ºÒÅõ¸í URI´Â ±× ÀÌ»ó ÇØ¼®µÇÁö ¾Ê½À´Ï´Ù. ºÒÅõ¸í URI ¿¹¸¦ ´ÙÀ½¿¡ ³ªÅ¸³À´Ï´Ù.
mailto:java-net@java.sun.com news:comp.lang.java urn:isbn:096139210x
¡¸°èÃþ¡¹URI´Â schema °íÀ¯ ºÎºÐÀÌ slash·Î ½ÃÀ۵Ǵ Àý´ë URI, ¶Ç´Â »ó´ë URI (schema¸¦ ÁöÁ¤ÇÏÁö ¾Ê´Â URI)ÀÔ´Ï´Ù. °èÃþ URI ¿¹¸¦ ´ÙÀ½¿¡ ³ªÅ¸³À´Ï´Ù.
http://java.sun.com/j2se/1. 3/
docs/guide/collections/designfaq.html#28
../../../demo/jfc/SwingSet2/src/SwingSet2.java
//~/calendar
°èÃþ URI´Â ±¸¹®¿¡ µû¶ó ¶ÇÇÑ ÇØ¼®µË´Ï´Ù.
[schema:][//±ÇÇÑ][ÆÐ½º][? Äõ¸®][#fragment]¿©±â¼, :, /, ? ¹× # Àº ±× ¹®ÀÚ ÀÚü¸¦ ³ªÅ¸³À´Ï´Ù. °èÃþ URI schema °íÀ¯ ºÎºÐÀº schema¿Í fragment ÄÄÆÛ³ÍÆ®ÀÇ »çÀÌÀÇ ¹®ÀÚ·Î ±¸¼ºµË´Ï´Ù.
°èÃþ URI ±ÇÇÑ ÄÄÆÛ³ÍÆ®°¡ °¡¸®Å°´Â °æ¿ì, ±× ±ÇÇÑ ÄÄÆÛ³ÍÆ®´Â ¡¸¼¹ö º£À̽º¡¹¶Ç´Â ¡¸·¹Áö½ºÆ®¸® º£À̽º¡¹ÀÔ´Ï´Ù. ¼¹ö º£À̽º ±ÇÇÑÀº Àß ¾Ë·ÁÁ® ÀÖ´Â ±¸¹®¿¡ µû¶ó ÇØ¼®µË´Ï´Ù.
[»ç¿ëÀÚ Á¤º¸@]È£½ºÆ®[:Æ÷Æ®]¿©±â¼, @ ¶ó°í :´Â ±× ¹®ÀÚ ÀÚü¸¦ ³ªÅ¸³À´Ï´Ù. ÇöÀç »ç¿ëµÇ°í ÀÖ´Â URI schemaÀÇ ´ëºÎºÐÀº ¼¹ö º£À̽ºÀÔ´Ï´Ù. ÀÌ¿Í °°ÀÌ ÇØ¼®µÇÁö ¾Ê´Â ±ÇÇÑ ÄÄÆÛ³ÍÆ®´Â ·¹Áö½ºÆ®¸® º£À̽º¶ó°í º¸¿©Áý´Ï´Ù.
°èÃþ URI ÆÄ½ºÄÜÆ÷³ÙÆ®´Â slash ( ¡¸/¡¹)·Î ½ÃÀ۵Ǵ °æ¿ì´Â Àý´ë·Î ºÒ·Á ±×·¸Áö ¾ÊÀº °æ¿ì´Â »ó´ë·Î ºÒ¸³´Ï´Ù. Àý´ëÀÎ °èÃþ URI ¶Ç´Â ±ÇÇÑÀ» ÁöÁ¤ÇÏ´Â °èÃþ URI ÆÐ½º´Â Ç×»ó Àý´ëÀÔ´Ï´Ù.
URI ÀνºÅϽº¿¡´Â ÀüºÎ ´ÙÀ½ÀÇ 9°³ÀÇ ÄÄÆÛ³ÍÆ®°¡ ÀÖ½À´Ï´Ù.
ÁöÁ¤µÈ ÀνºÅϽº¿¡¼´Â ¾î´À ƯÁ¤ÀÇ ÄÄÆÛ³ÍÆ®µµ ¡¸¹ÌÁ¤µµ¸®¡¹Àΰ¡ ¡¸Á¤Àǰ¡ ³¡³ »óÅ¡¹À̸ç, °³º°ÀÇ ÇüÅÂÀÇ °ªÀ» °¡Áý´Ï´Ù. ¹ÌÁ¤µµ¸®ÀÇ Ä³¸¯ÅÍ ¶óÀÎ ÄÄÆÛ³ÍÆ®´Â null·Î ³ªÅ¸³»Á® Á¤ÀÇ ³¡³ Á¤¼ö ÄÄÆÛ³ÍÆ®´Â -1 À¸·Î ³ªÅ¸³»Áý´Ï´Ù. ij¸¯ÅÍ ¶óÀÎ ÄÄÆÛ³ÍÆ®´Â °ªÀ¸·Î ÇØ¼ ºñ¾îÀִ ij¸¯ÅÍ ¶óÀÎÀ» °¡Áöµµ·Ï Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. À̰ÍÀº ±× ÄÄÆÛ³ÍÆ®°¡ ¹ÌÁ¤µµ¸®ÀÎ °ÍÀ¸·Î µ¿µîÇÏÁö´Â ¾Ê½À´Ï´Ù.
ÄÄÆÛ³ÍÆ® Çü schema String schema °íÀ¯ ºÎºÐ String ±ÇÇÑ String »ç¿ëÀÚ Á¤º¸ String È£½ºÆ® String Æ÷Æ® int ÆÐ½º String Äõ¸® String fragment String
ƯÁ¤ÀÇ ÄÄÆÛ³ÍÆ®°¡ ÀνºÅϽº·Î Á¤ÀǺô·ÁÁÖ¾îÁöÁö ¾ÊÀº°¡´Â Ç¥ÇöµÇ´Â URI ÇüÅ¿¡ ÀÇÇØ ´Ù¸¨´Ï´Ù. Àý´ë URI¿¡´Â schema ÄÄÆÛ³ÍÆ®°¡ ÀÖ½À´Ï´Ù. ºÒÅõ¸í URI¿¡´Â schema, schema °íÀ¯ ºÎºÐ ¹× (°æ¿ì¿¡ µû¶ó¼´Â) fragment°¡ ÀÖ½À´Ï´Ù¸¸, ±× ¿ÜÀÇ ÄÄÆÛ³ÍÆ®´Â ¾ø½À´Ï´Ù. °èÃþ URI ¿¡´Â Ç×»ó ÆÐ½º (´Ù¸¸ ºñ¾îÀÖ´Â °æ¿ì ÀÖ¾î) ¹× schema °íÀ¯ ºÎºÐ (Àû¾îµµ ÆÐ½º¸¦ Æ÷ÇÔÇÑ´Ù)ÀÌ ÀÖ¾î, ¶ÇÇÑ ±× ¿ÜÀÇ ÄÄÆÛ³ÍÆ®ÀÇ ¾î¶² °ÍÀΰ¡°¡ ÀÖ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. ±ÇÇÑ ÄÄÆÛ³ÍÆ®°¡ Á¸ÀçÇϰí ÀÖ¾î ¼¹ö º£À̽ºÀÎ °æ¿ì, È£½ºÆ® ÄÄÆÛ³ÍÆ®´Â Á¤Àǵ˴ϴÙ. »ç¿ëÀÚ Á¤º¸¿Í Æ÷Æ® ÄÄÆÛ³ÍÆ®´Â Á¤ÀǵǴ °æ¿ìµµ ÀÖ½À´Ï´Ù.
¡¸Á¤±ÔÈ¡¹´Â °èÃþ URI ÆÄ½ºÄÜÆ÷³ÙÆ®·ÎºÎÅÍ ºÒÇÊ¿äÇÑ ¡¸. ¡¹ ¹× ¡¸..¡¹¼¼±×¸ÕÆ®(segment)¸¦ »èÁ¦ÇÏ´Â ÇÁ·Î¼¼½ºÀÔ´Ï´Ù. °¢ ¡¸. ¡¹¼¼±×¸ÕÆ®(segment)´Â ´ÜÁö »èÁ¦µË´Ï´Ù. ¡¸..¡¹¼¼±×¸ÕÆ®(segment)´Â ¡¸..¡¹ÀÌ¿ÜÀÇ ¼¼±×¸ÕÆ®(segment)°¡ ¼±ÇàÇÏ´Â °æ¿ì¿¡¸¸ »èÁ¦µË´Ï´Ù. Á¤±ÔÈ´Â ºÒÅõ¸í URI¿¡´Â ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù.
¡¸Çذ᡹Àº ¾î´À URI¸¦ ´Ù¸¥ ¡¸º£À̽º¡¹URI¿¡ ´ëÇØ¼ ÇØ°áÇÏ´Â ÇÁ·Î¼¼½ºÀÔ´Ï´Ù. °á°úÀÇ URI´Â RFC 2396 ·Î ÁöÁ¤µÇ°í ÀÖµµ·Ï, ¾çÂÊ ¸ðµÎÀÇ URI ÄÄÆÛ³ÍÆ®·ÎºÎÅÍ ±¸ÃàµÇ¾î ¿øÀÇ URI ·Î ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀº ÄÄÆÛ³ÍÆ®¸¦ À§Çؼ º£À̽º URI ·ÎºÎÅÍ ÄÄÆÛ³ÍÆ®¸¦ ¼öÁß¿¡ ³Ö½À´Ï´Ù. °èÃþ URIÀÎ °æ¿ì, ¿øÀÇ ÆÐ½º´Â º£À̽ºÀÇ ÆÐ½º¿¡ ´ëÇØ¼ ÇØ°áµÇ¾î Á¤±Ôȵ˴ϴÙ. ¿¹¸¦ µé¾î ´ÙÀ½°ú °°ÀÌ µË´Ï´Ù.
docs/guide/collections/designfaq.html#28 (1)¸¦ º£À̽º URI http://java.sun.com/j2se/1. 3/¿¡ ´ëÇØ¼ ÇØ°áÇϸé, °á°úÀÇ URI´Â ´ÙÀ½°ú °°ÀÌ µË´Ï´Ù.
http://java.sun.com/j2se/1. 3/docs/guide/collections/designfaq.html#28»ó´ë URI
../../../demo/jfc/SwingSet2/src/SwingSet2.java (2)¸¦ ÀÌ °á°ú¿¡ ´ëÇØ¼ ÇØ°áÇϸé, ´ÙÀ½°ú °°ÀÌ µË´Ï´Ù.
http://java.sun.com/j2se/1. 3/demo/jfc/SwingSet2/src/SwingSet2.javaÀý´ë¿Í »ó´ëÀÇ ¾çÂÊ ¸ðµÎÀÇ URI ÇØ°á ¹× °èÃþ URIÀÎ °æ¿ì´Â Àý´ë¿Í »ó´ëÀÇ ¾çÂÊ ¸ðµÎÀÇ ÆÐ½ºÀÇ ÇØ°áÀÌ Áö¿ø µË´Ï´Ù. URI //~calendar´Â Àý´ëÀ̹ǷΠÀ̰ÍÀ» ´Ù¸¥ ÀÓÀÇÀÇ URI¿¡ ´ëÇØ¼ ÇØ°áÇϸé, ¿øÀÇ URI°¡ »ý¼ºµÉ »ÓÀÔ´Ï´Ù. »ó±âÀÇ »ó´ë URI (2)¸¦ »ó´ë º£À̽º URI (1)¿¡ ´ëÇØ¼ ÇØ°áÇϸé, Á¤±Ôȵǰí À־ »ó´ë ÀΠäÀÇ URI°¡ »ý¼ºµË´Ï´Ù.
demo/jfc/SwingSet2/src/SwingSet2.java
¸¶Áö¸·À¸·Î ¡¸»ó´ëÈ¡¹´Â ÇØ°áÀÇ ¿ªº¯È¯ÀÔ´Ï´Ù. ÀÓÀÇÀÇ 2°³ÀÇ Á¤±ÔÈµÈ URI u ¹× vÀÎ °æ¿ì,
u. relativize(u. resolve(v)). equals(v) ¹×ÀÌ Á¶ÀÛÀº °¡´ÉÇÏ¸é ¾îµð¼¿¡¼µµ, ¹®¼ÀÇ º£À̽º URI¿¡ ´ëÇØ¼ »ó´ëÀûÀÌ ¾Æ´Ï¸é ¾ÈµÇ´Â URI¸¦ Æ÷ÇÔÇÑ ¹®¼¸¦ ±¸ÃàÇÏ´Â °æ¿ì¿¡ Æí¸®ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î ´ÙÀ½ÀÇ URI
u. resolve(u. relativize(v)). equals(v)
http://java.sun.com/j2se/1. 3/docs/guide/index.html¸¦ ´ÙÀ½ÀÇ º£À̽º URI¿¡ ´ëÇØ¼ »ó´ëÈÇϸé,
http://java.sun.com/j2se/1. 3»ó´ë URI docs/guide/index.html°¡ »ý¼ºµË´Ï´Ù.
¿µ¹®ÀÚ ¡¸A¡¹·ÎºÎÅÍ ¡¸Z¡¹ ¹× ¡¸a¡¹·ÎºÎÅÍ ¡¸z¡¹±îÁöÀÇ US-ASCII ¿µ¹®ÀÚ ¼ýÀÚ ¡¸0¡¹À¸·ÎºÎÅÍ ¡¸9¡¹±îÁöÀÇ US-ASCII 10 Áø¼öÀÚ ¿µ¼ýÀÚ ¸ðµç ¡¸¿µ¹®ÀÚ¡¹ ¹× ¡¸¼ýÀÚ¡¹¹®ÀÚ ¹Ì¿¹¾à ¸ðµç ¡¸¿µ¼ýÀÚ¡¹¹®ÀÚ ¹× ij¸¯ÅÍ ¶óÀÎ ¡¸_-!.~'()*¡¹ ¾ÈÀÇ ¹®ÀÚ ±¸µÎÁ¡ ij¸¯ÅÍ ¶óÀÎ ¡¸,;:$&+=¡¹ ¾ÈÀÇ ¹®ÀÚ ¿¹¾à ¸ðµç ¡¸±¸µÎÁ¡¡¹¹®ÀÚ ¹× ij¸¯ÅÍ ¶óÀÎ ¡¸"? /[]@"¡¹ ¾ÈÀÇ ¹®ÀÚ À̽ºÄÉÀÌÇÁ À̽ºÄÉÀÌÇÁ 8Áßâ. Áï, ÆÛ¼¾Æ® ¹®ÀÚ ( ¡¸%¡¹)¿Í °Å±â¿¡ °è¼ÓµÇ´Â 2 ÀÚ¸®¼öÀÇ 16 Áø¼ö ( ¡¸0¡¹~ ¡¸9¡¹, ¡¸A¡¹~ ¡¸F¡¹ ¹× ¡¸a¡¹~ ¡¸f¡¹)·Î ±¸¼ºµÇ´Â »ïÁßÇ× ±× ¿Ü US-ASCII ij¸¯Åͼ¿¡ Æ÷ÇÔµÇÁö ¾Ê°í, Á¦¾î ¹®ÀÚ ( Character.isISOControl
¸Þ¼µå¿¡ ÇÑ´Ù)°¡ ¾Æ´Ï°í, °ø¹é ¹®ÀÚ (Character.isSpaceChar
¸Þ¼µå¿¡ ÇÑ´Ù)°¡ ¾Æ´Ñ Unicode ¹®ÀÚ (US-ASCII ·Î ÇÑÁ¤µÇ°í ÀÖ´Â RFC 2396À» º¯°æÇÑ °Í)
¡¸¹Ì¿¹¾à¡¹, ¡¸¿¹¾à¡¹, ¡¸À̽ºÄÉÀÌÇÁ¡¹ ¹× ¡¸±× ¿Ü¡¹ÀÇ ¹®ÀÚ·Î ±¸¼ºµÇ´Â ¸ðµç À¯È¿ÇÑ URI ¹®ÀÚ¼¼Æ®
¡¸±× ¿Ü¡¹ÀÇ ¹®ÀÚ¸¦ »ç¿ëÇÏ´Â ÀÏ ¾øÀÌ URI¸¦ RFC 2396¿¡ ¾ö¹ÐÇÏ°Ô ÀûÇÕ½Ãų Çʿ䰡 ÀÖ´Â °æ¿ì¿¡ ºñ US-ASCII ¹®ÀÚ¸¦ ¡¸encode¡¹ÇÑ´Ù
±×´ë·Î´Â ºÎÁ¤ÇÏ°Ô µÇ´Â ÄÄÆÛ³ÍÆ®³»ÀÇ ¹®ÀÚ¸¦ ¡¸ÀοëºÎÈ£·Î µÑ·¯½Ñ´Ù¡¹. »ç¿ëÀÚ Á¤º¸, ÆÐ½º, Äõ¸® ¹× fragmentÀÇ °¢ ÄÄÆÛ³ÍÆ®´Â À¯È¿ ¶Ç´Â ºÎÁ¤À̶ó°í º¸¿©Áö´Â ¹®ÀÚÀÇ Á¶°ÇÀÌ ´Ù¼Ò ´Ù¸£´Ù
¹®ÀÚ´Â UTF-8 ij¸¯Åͼ³»ÀÇ ±× ¹®ÀÚ¸¦ ³ªÅ¸³»´Â À̽ºÄÉÀÌÇÁ 8ÁßâÀÇ ¼ø¼·Î ¿Å°Ü³õ¾Æ ¡¸encode¡¹µÈ´Ù. ¿¹¸¦ µé¾î À¯·Î ÅëÈ ±âÈ£ ( ¡¸\u20AC¡¹)´Â ¡¸%E2%82%AC·Î¼ encode µÈ´Ù (ƯÁ¤ÀÇ Ä³¸¯Åͼ¸¦ ÁöÁ¤ÇÏÁö ¾Ê´Â RFC 2396¸¦ º¯°æÇÑ °Í)
¸ðµç ºÎÁ¤ÇÑ ¹®ÀÚ´Â ´ÜÁö encodeÀÇÇØ ¡¸ÀοëºÎÈ£·Î À§¡¹. ¿¹¸¦ µé¾î °ø¹é ¹®ÀÚ´Â ¡¸%20¡¹·Î ¿Å°Ü³õ¾Æ ÀοëºÎÈ£·Î µÑ·¯½ÎÀδÙ. UTF-8¿¡´Â US-ASCII°¡ Æ÷ÇԵǹǷΠUS-ASCII ¹®ÀÚÀÇ °æ¿ì, ÀÌ º¯È¯À¸·Î RFC 2396 ·Î ¿ä±¸µÇ´Â È¿°ú¸¦ Á¤È®ÇÏ°Ô ¾òÀ» ¼ö ÀÖ´Ù
À̽ºÄÉÀÌÇÁ 8ÁßâÀÇ ¼ø¼´Â ±× ¼ø¼°¡ UTF-8 ij¸¯Åͼ³»¿¡¼ ³ªÅ¸³»´Â ¹®ÀÚÀÇ ¼ø¼·Î ¿Å°Ü³õÀ» ¼ö ÀÖ´Â °ÍÀ¸·Î ¡¸º¹È£È¡¹µÈ´Ù. UTF-8¿¡´Â US-ASCII°¡ Æ÷ÇԵǹǷΠº¹È£È¿¡´Â ÀοëºÎÈ£·Î µÑ·¯½ÎÀÎ ¸ðµç US-ASCII ¹®ÀÚÀÇ ÀοëºÎÈ£¸¦ ÇØÁ¦ÇÏ´Â È¿°ú¿Í encode µÈ ºñ US-ASCII ¹®ÀÚ¸¦ º¹È£È ÇÏ´Â È¿°ú°¡ ÀÖ´Ù. À̽ºÄÉÀÌÇÁ 8ÁßâÀ» º¹È£È ÇÒ °æ¿ì¿¡º¹È£È ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì, ºÎÁ¤ÇÑ 8ÁßâÀº Unicode ġȯ ¹®ÀÚ ¡¸\uFFFD¡¹·Î ¿Å°Ü³õÀ» ¼ö ÀÖ´Ù
¿¡¼´Â Àμö³»ÀÇ ºÎÁ¤ÇÑ ¹®ÀÚ¸¦ ÀοëºÎÈ£·Î µÑ·¯½Ò Çʿ䰡 ÀÖ¾î, Á¸ÀçÇÏ´Â ¸ðµç À̽ºÄÉÀÌÇÁ 8Áßâ°ú ¡¸±× ¿Ü¡¹ÀÇ ¹®ÀÚ¸¦ º¸Á¸ÇÑ´Ùsingle-argument constructor
´Â
ºÎÁ¤ÇÑ ¹®ÀÚ°¡ Á¸ÀçÇÏ´Â ÄÄÆÛ³ÍÆ®ÀÇ ¿ä±¸¿¡ ÀÇÇØ ºÎÁ¤ÇÑ ¹®ÀÚ¸¦ ÀοëºÎÈ£·Î µÑ·¯½Ñ´Ù. ÆÛ¼¾Æ® ¹®ÀÚ ( ¡¸%¡¹)´Â Ç×»ó ÀÌ·¯ÇÑ »ý¼ºÀÚ¿¡ ÀÇÇØ µÑ·¯½ÎÀδÙ. ¡¸±× ¿Ü¡¹ÀÇ ¹®ÀÚ´Â º¸Á¸µÈ´Ùmulti-argument constructors
getRawUserInfo
,
getRawPath
,
getRawQuery
,
getRawFragment
,
getRawAuthority
¹× getRawSchemeSpecificPart
¸Þ¼µå´Â ´ëÀÀÇÏ´Â ÄÄÆÛ³ÍÆ®ÀÇ °ªÀ» ±×´ë·ÎÀÇ Çü½Ä¿¡¼ µ¹·ÁÁÖ°í, À̽ºÄÉÀÌÇÁ 8ÁßâÀ» ÇØ¼®ÇÏÁö ¾Ê´Â´Ù. ÀÌ·¯ÇÑ ¸Þ¼µå·ÎºÎÅÍ ¸®ÅϵÈ
ij¸¯ÅÍ ¶óÀο¡´Â À̽ºÄÉÀÌÇÁ 8Áßâ°ú ¡¸±× ¿Ü¡¹ÀÇ ¹®ÀÚÀÇ ¾çÂÊ ¸ðµÎ°¡ Æ÷ÇԵǾî ÀÖ´Â ÀÏÀÌ ÀÖ¾î, ºÎÁ¤ÇÑ ¹®ÀÚ´Â Æ÷ÇÔµÇÁö ¾Ê´Â´Ù
getUserInfo
,
getPath
,
getQuery
,
getFragment
,
getAuthority
¹× getSchemeSpecificPart
¸Þ¼µå´Â ´ëÀÀÇÏ´Â ÄÄÆÛ³ÍÆ®ÀÇ À̽ºÄÉÀÌÇÁ 8ÁßâÀ» º¹È£È ÇÑ´Ù. ÀÌ·¯ÇÑ ¸Þ¼µå·ÎºÎÅÍ ¸®ÅϵÈ
ij¸¯ÅÍ ¶óÀο¡´Â ºÎÁ¤ÇÑ ¹®ÀÚ¿Í ¡¸±× ¿Ü¡¹ÀÇ ¹®ÀÚÀÇ ¾çÂÊ ¸ðµÎ°¡ Æ÷ÇԵǾî ÀÖ´Â ÀÏÀÌ ÀÖ¾î, À̽ºÄÉÀÌÇÁ 8ÁßâÀº Æ÷ÇÔµÇÁö ¾Ê´Â´Ù
toString
¸Þ¼µå´Â ¸ðµç ÇÊ¿äÇÑ ÀοëºÎÈ£¸¦ °¡Áö´Â URI ij¸¯ÅÍ ¶óÀÎÀ» µ¹·ÁÁÖÁö¸¸, ¡¸±× ¿Ü¡¹ÀÇ ¹®ÀÚ°¡ Æ÷ÇԵǴ °æ¿ì°¡ ÀÖ´Ù
toASCIIString
¸Þ¼µå´Â ¡¸±× ¿Ü¡¹ÀÇ ¹®ÀÚ¸¦ Æ÷ÇÔÇÏÁö ¾Ê´Â ¿ÏÀüÇÏ°Ô ÀοëºÎÈ£·Î µÑ·¯½Î¿© encode µÈ URI ij¸¯ÅÍ ¶óÀÎÀ» µ¹·ÁÁØ´Ù
new URI(u. toString()). equals(u)ºñ¾îÀÖ´Â ±ÇÇÑÀÇ Àü¿¡ 2°³ÀÇ slash°¡ Àְųª (file:///tmp/ µî), È£½ºÆ®¸íÀÇ ÈÄ¿¡ ±¸µÎÁ¡ÀÌ À־ Æ÷Æ®°¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾Ê°Å³ª (http://java.sun.com: µî) ÇÏ´Â °Í °°Àº ÀåȲ ±¸¹®À» Æ÷ÇÔÇÏÁö ¾Ê°í, ÀοëºÎÈ£·Î µÑ·¯½Ò Çʿ䰡 ÀÖ´Â ¹®ÀÚ ÀÌ¿ÜÀÇ ¹®ÀÚ¸¦ encode ÇÏÁö ¾Ê´Â URI uÀÎ °æ¿ì´Â ´ÙÀ½°ú °°ÀÌ µË´Ï´Ù.
new URI(u. getScheme(),¸ðµç °æ¿ì¿¡ ´ëÇØ
u. getSchemeSpecificPart(),
u. getFragment())
. equals(u)
new URI(u. getScheme(),u°¡ °èÃþÀÇ °æ¿ì
u. getUserInfo(), u. getAuthority(),
u. getPath(), u. getQuery(),
u. getFragment())
. equals(u)
new URI(u. getScheme(),u°¡ °èÃþ¿¡¼ ±ÇÇÑ ¶Ç´Â ¼¹ö º£À̽ºÀÇ ±ÇÇÑÀ» °¡ÁöÁö ¾Ê´Â °æ¿ì
u. getUserInfo(), u. getHost(), u. getPort(),
u. getPath(), u. getQuery(),
u. getFragment())
. equals(u)
URI¿Í
URL
°³³ä»óÀÇ ±¸º°Àº ÀÌ Å¬·¡½º¿Í URL
Ŭ·¡½ºÀÇ »çÀÌÀÇ »óÀ§¿¡ ¹Ý¿µµÇ°í ÀÖ½À´Ï´Ù.
ÀÌ Å¬·¡½ºÀÇ ÀνºÅϽº´Â RFC 2396 ·Î Á¤Àǵǰí ÀÖ´Â ±¸¹®ÀûÀÎ ¹Ì¿¡¼ÀÇ URI ÂüÁ¶¸¦ ³ªÅ¸³À´Ï´Ù. URI´Â Àý´ë¿¡¼µµ »ó´ë¿¡¼µµ ±¦Âú½À´Ï´Ù. URI ij¸¯ÅÍ ¶óÀÎÀº ÀÏ¹Ý ±¸¹®¿¡ µû¶ó ÇØ¼®µÇ¾î ÁöÁ¤µÈ schema°¡ À־ °í·ÁÇÏÁö ¾Ê½À´Ï´Ù. È£½ºÆ®ÀÇ ÂüÁ¶´Â À־ ½ÇÇàµÇÁö ¾Ê°í, schema Á¸ÀÇ ½ºÆ®¸² Çڵ鷯´Â ±¸ÃàµÇÁö ¾Ê½À´Ï´Ù. µ¿µî¼º, ÇØ½Ã ¹× ºñ±³´Â ÀνºÅϽºÀÇ ¹®ÀÚ ³»¿ë¿¡ ÀÇÇØ ¾ö¹ÐÇÏ°Ô Á¤Àǵ˴ϴÙ. Áï, URI ÀνºÅϽº´Â ºñ±³, Á¤±ÔÈ, ÇØ°á ¹× »ó´ëÈÀÇ ±¸¹®ÀûÀÎ, schema¿¡ Á¸ÇÏÁö ¾Ê´Â Á¶ÀÛÀ» Áö¿øÇÏ´Â ±¸Á¶È ij¸¯ÅÍ ¶óÀο¡ Áö³ªÁö ¾Ê½À´Ï´Ù.
´ëÁ¶ÀûÀ¸·ÎURL
Ŭ·¡½ºÀÇ ÀνºÅϽº´Â URL
±¸¹®Àû ÄÄÆÛ³ÍÆ® ¹× URL°¡ ±â¼úÇÏ´Â ÀÚ¿ø¿¡ÀÇ ¾×¼¼½º¿¡ ÇÊ¿äÇÑ Á¤º¸ÀÇ ÀϺθ¦ ³ªÅ¸³À´Ï´Ù. URL´Â Àý´ëÀÏ Çʿ䰡 ÀÖ½À´Ï´Ù. Áï, Ç×»ó schema¸¦ ÁöÁ¤ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. URL ij¸¯ÅÍ ¶óÀÎÀº ±× schema¿¡ µû¶ó ÇØ¼®µË´Ï´Ù. ½ºÆ®¸² Çڵ鷯´Â Ç×»ó URL ¿ëÀ¸·Î È®¸³µÇ¾î »ç½Ç, Çڵ鷯¸¦ »ç¿ëÇÒ ¼ö ¾ø´Â schemaÀÇ URL ÀνºÅϽº¸¦ ÀÛ¼ºÇÒ ¼ö ¾ø½À´Ï´Ù. µ¿µî¼º°ú ÇØ½Ã´Â ¸¸¾à ÀÖÀ¸¸é, schema¿Í È£½ºÆ®ÀÇ ÀÎÅÍ³Ý ÁÖ¼ÒÀÇ ¾çÂÊ ¸ðµÎ¿¡
ÀÇÁ¸ÇÕ´Ï´Ù. ºñ±³´Â Á¤ÀǵÇÁö ¾Ê½À´Ï´Ù. Áï, URL´Â
ÇØ°áÀÇ ±¸¹®Àû Á¶ÀÛ°ú È£½ºÆ®¸¦ ÂüÁ¶ÇØ, ÁöÁ¤µÈ ÀÚ¿ø¿¡ÀÇ Á¢¼ÓÀ» ¿©´Â ³×Æ®¿öÅ© ÀÔÃâ·Â Á¶ÀÛÀ» Áö¿øÇÏ´Â ±¸Á¶È ij¸¯ÅÍ ¶óÀÎÀÔ´Ï´Ù.
»ý¼ºÀÚ °³¿ä | |
---|---|
URI (String str)
ÁöÁ¤µÈ ij¸¯ÅÍ ¶óÀÎÀ» ÇØ¼®ÇØ URI¸¦ ±¸ÃàÇÕ´Ï´Ù. |
|
URI (String scheme,
String ssp,
String fragment)
ÁöÁ¤µÈ ÄÄÆÛ³ÍÆ®·ÎºÎÅÍ URI¸¦ ±¸ÃàÇÕ´Ï´Ù. |
|
URI (String scheme,
String userInfo,
String host,
int port,
String path,
String query,
String fragment)
ÁöÁ¤µÈ ÄÄÆÛ³ÍÆ®·ÎºÎÅÍ °èÃþ URI¸¦ ±¸ÃàÇÕ´Ï´Ù. |
|
URI (String scheme,
String host,
String path,
String fragment)
ÁöÁ¤µÈ ÄÄÆÛ³ÍÆ®·ÎºÎÅÍ °èÃþ URI¸¦ ±¸ÃàÇÕ´Ï´Ù. |
|
URI (String scheme,
String authority,
String path,
String query,
String fragment)
ÁöÁ¤µÈ ÄÄÆÛ³ÍÆ®·ÎºÎÅÍ °èÃþ URI¸¦ ±¸ÃàÇÕ´Ï´Ù. |
¸Þ¼µå °³¿ä | |
---|---|
int |
compareTo (URI that)
ÀÌ URI¸¦ ´Ù¸¥ °´Ã¼¿Í ºñ±³ÇÕ´Ï´Ù. |
static URI |
create (String str)
ÁöÁ¤µÈ ij¸¯ÅÍ ¶óÀÎÀ» ÇØ¼®ÇØ URI¸¦ ÀÛ¼ºÇÕ´Ï´Ù. |
boolean |
equals (Object ob)
ÀÌ URI°¡ ´Ù¸¥ °´Ã¼¿Í µ¿ÀÏÇÑÁö ¾î¶²Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. |
String |
getAuthority ()
ÀÌ URI º¹È£È µÈ ±ÇÇÑ ÄÄÆÛ³ÍÆ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
String |
getFragment ()
ÀÌ URI º¹È£È µÈ fragment ÄÄÆÛ³ÍÆ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
String |
getHost ()
ÀÌ URI È£½ºÆ® ÄÄÆÛ³ÍÆ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
String |
getPath ()
ÀÌ URI º¹È£È µÈ ÆÄ½ºÄÜÆ÷³ÙÆ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
int |
getPort ()
ÀÌ URI Æ÷Æ® ¹øÈ£¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
String |
getQuery ()
ÀÌ URI º¹È£È µÈ Äõ¸®ÄÄÆÛ³ÍÆ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
String |
getRawAuthority ()
ÀÌ URI ±×´ë·ÎÀÇ ±ÇÇÑ ÄÄÆÛ³ÍÆ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
String |
getRawFragment ()
ÀÌ URI ±×´ë·ÎÀÇ fragment ÄÄÆÛ³ÍÆ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
String |
getRawPath ()
ÀÌ URI ±×´ë·ÎÀÇ ÆÄ½ºÄÜÆ÷³ÙÆ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
String |
getRawQuery ()
ÀÌ URI ±×´ë·ÎÀÇ Äõ¸®ÄÄÆÛ³ÍÆ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
String |
getRawSchemeSpecificPart ()
ÀÌ URI schema °íÀ¯ ºÎºÐÀ» ¸®ÅÏÇÕ´Ï´Ù. |
String |
getRawUserInfo ()
ÀÌ URI ±×´ë·ÎÀÇ »ç¿ëÀÚ Á¤º¸ ÄÄÆÛ³ÍÆ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
String |
getScheme ()
ÀÌ URI schema ÄÄÆÛ³ÍÆ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
String |
getSchemeSpecificPart ()
ÀÌ URI º¹È£È µÈ schema °íÀ¯ ºÎºÐÀ» ¸®ÅÏÇÕ´Ï´Ù. |
String |
getUserInfo ()
ÀÌ URI º¹È£È µÈ »ç¿ëÀÚ Á¤º¸ ÄÄÆÛ³ÍÆ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
int |
hashCode ()
ÀÌ URI ÇØ½Ã Äڵ尪À» ¸®ÅÏÇÕ´Ï´Ù. |
boolean |
isAbsolute ()
ÀÌ URI°¡ Àý´ëÀΰ¡ ¾î¶²°¡¸¦ ÅëÁöÇÕ´Ï´Ù. |
boolean |
isOpaque ()
ÀÌ URI°¡ ºÒÅõ¸íÇѰ¡ ¾î¶²°¡¸¦ ÅëÁöÇÕ´Ï´Ù. |
URI |
normalize ()
ÀÌ URI ÆÐ½º¸¦ Á¤±ÔÈÇÕ´Ï´Ù. |
URI |
parseServerAuthority ()
ÀÌ URI ±ÇÇÑ ÄÄÆÛ³ÍÆ® (Á¤Àǵǰí ÀÖ´Â °æ¿ì)·ÎºÎÅÍ »ç¿ëÀÚ Á¤º¸, È£½ºÆ® ¹× Æ÷Æ®ÀÇ °¢ ÄÄÆÛ³ÍÆ®¿¡ÀÇ ÇØ¼®À» ½ÃµµÇÕ´Ï´Ù. |
URI |
relativize (URI uri)
ÁöÁ¤µÈ URI¸¦ ÀÌ URI¿¡ ´ëÇØ¼ »ó´ëÈÇÕ´Ï´Ù. |
URI |
resolve (String str)
ÁöÁ¤µÈ ij¸¯ÅÍ ¶óÀÎÀ» ÇØ¼®ÇØ, ±× ÈÄ ±× ij¸¯ÅÍ ¶óÀÎÀ» ÀÌ URI¿¡ ´ëÇØ¼ ÇØ°áÇØ, »õ·Î¿î URI¸¦ ±¸ÃàÇÕ´Ï´Ù. |
URI |
resolve (URI uri)
ÁöÁ¤µÈ URI¸¦ ÀÌ URI¿¡ ´ëÇØ¼ ÇØ°áÇÕ´Ï´Ù. |
String |
toASCIIString ()
ÀÌ URI ÄÁÅÙÃ÷¸¦ US-ASCII ij¸¯ÅÍ ¶óÀÎÀ¸·Î¼ ¸®ÅÏÇÕ´Ï´Ù. |
String |
toString ()
ÀÌ URI ÄÁÅÙÃ÷¸¦ ij¸¯ÅÍ ¶óÀÎÀ¸·Î¼ ¸®ÅÏÇÕ´Ï´Ù. |
URL |
toURL ()
ÀÌ URI ·ÎºÎÅÍ URL¸¦ ±¸ÃàÇÕ´Ï´Ù. |
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼µå |
---|
clone,
finalize,
getClass,
notify,
notifyAll,
wait,
wait,
wait |
»ý¼ºÀÚ »ó¼¼ |
---|
public URI(String str) throws URISyntaxException
ÀÌ »ý¼ºÀÚ´Â ¡¸RFC 2396¡¹ºÎ·Ï A ¹®¹ýÀ¸·Î ¾ö¹ÐÇÏ°Ô ÁöÁ¤µÈ ij¸¯ÅÍ ¶óÀÎÀ» ÇØ¼®ÇÕ´Ï´Ù. ´Ù¸¸, ´ÙÀ½ÀÇ Á¡ÀÌ ´Ù¸¨´Ï´Ù.
ºñ¾îÀÖ´Â ±ÇÇÑ ÄÄÆÛ³ÍÆ®´Â ±× ÈÄ¿¡ ºñ¾îÀÖÁö ¾ÊÀº ÆÐ½º, Äõ¸®ÄÄÆÛ³ÍÆ®, ¶Ç´Â fragment ÄÄÆÛ³ÍÆ®°¡ °è¼ÓµÇ´Â ÇÑ Çã°¡µÈ´Ù. À̰Ϳ¡ ÀÇÇØ ¡¸file:///foo/bar¡¹µîÀÇ URI¸¦ ÇØ¼®ÇÒ ¼ö ÀÖ´Ù. ÀÌ URI´Â ¹®¹ýÀûÀ¸·Î´Â Çã°¡µÇÁö ¾ÊÁö¸¸, RFC 2396 µµ¿¡ ÇÕÄ¡ÇÑ´Ù. ±ÇÇÑ ÄÄÆÛ³ÍÆ®°¡ ºñ¾îÀÖ´Â °æ¿ì, »ç¿ëÀÚ Á¤º¸, È£½ºÆ® ¹× Æ÷Æ®ÀÇ °¢ ÄÄÆÛ³ÍÆ®´Â ¹ÌÁ¤µµ¸®ÀÌ´Ù
ºñ¾îÀÖ´Â »ó´ë ÆÐ½º´Â Çã°¡µÈ´Ù. À̰ÍÀº ¹®¹ýÀûÀ¸·Î´Â Çã°¡µÇÁö ¾ÊÁö¸¸, RFC 2396 µµ¿¡ ÇÕÄ¡ÇÑ´Ù. ÀÌ º¯°æÀÇ ÁÖµÈ °á°úÀûÀ¸·Î ¡¸#foo¡¹µîÀÇ ½ºÅĵå¾ó·ÐÀÇ fragment°¡ ºñ¾îÀÖ´Â ÆÐ½º ¹× ÁöÁ¤µÈ fragment¸¦ °¡Áö´Â »ó´ë URI ·Î¼ ÇØ¼®µÇ¾î º£À̽º URI¿¡ ´ëÇØ¼ À¯È¿ÇϰÔÇØ°áÇÒ ¼ö ÀÖ´Ù
È£½ºÆ® ÄÄÆÛ³ÍÆ®ÀÇ IPv4 ÁÖ¼Ò´Â RFC 2732 ·Î °¡¸®Å°´Â ´ë·Î ¾ö¹ÐÇÏ°Ô ÇØ¼®µÈ´Ù. ´åÀ¸·Î 4 °³·Î ±¸ºÐµÈ ÁÖ¼ÒÀÇ °¢ ¿ä¼Ò¿¡´Â 3 ÀÚ¸®¼ö¸¦ ³ÑÁö ¾Ê´Â 10 Áø¼ö°¡ Æ÷ÇԵǾî ÀÖÀ» Çʿ䰡 ÀÖ´Ù. °Ô´Ù°¡ °¢ ¿ä¼ÒÀÇ °ªÀº 255¸¦ ³Ñ¾î¼´Â ¾È µÈ´Ù°í ÇÏ´Â Á¦¾àÀÌ ÀÖ´Ù
1°³ÀÇ µµ¸ÞÀÎ ¶óº§¸¸À» Çã°¡Çϴ ȣ½ºÆ® ÄÄÆÛ³ÍÆ®³»ÀÇ È£½ºÆ®¸íÀº ¡¸¿µ¼ýÀÚ¡¹·Î ½ÃÀÛµÉ ¼ö°¡ ÀÖ´Ù. À̰ÍÀº ¹®¹ýÀûÀ¸·Î´Â Çã°¡µÇÁö ¾ÊÁö¸¸, RFC 2396 ¼½¼Ç 3. 2.2 µµ¿¡ ÇÕÄ¡ÇÑ´Ù. ÀÌ º¯°æÀÇ ÁÖµÈ °á°úÀûÀ¸·Îs://123¿Í °°Àº °èÃþ URL ±ÇÇÑ ÄÄÆÛ³ÍÆ®°¡ ¼¹ö º£À̽ºÀÇ ±ÇÇÑÀ¸·Î¼ ÇØ¼®µÈ´Ù
IPv6 ÁÖ¼Ò°¡ È£½ºÆ® ÄÄÆÛ³ÍÆ®·Î Çã°¡µÈ´Ù. IPv6 ÁÖ¼Ò´Â RFC 2732 ·Î ÁöÁ¤µÇ°í ÀÖµµ·Ï, ²©¼â¹À½ ( ¡¸[¡¹ ¹× ¡¸]¡¹)À¸·Î µÑ·¯½Ò Çʿ䰡 ÀÖ´Ù. IPv6 ÁÖ¼Ò ÀÚü´Â RFC 2373¿¡ µû¶ó ÇØ¼®ÇÒ Çʿ䰡 ÀÖ´Ù. °Ô´Ù°¡ IPv6 ÁÖ¼Ò¿¡´Â 16 ¹ÙÀÌÆ®¸¦ ³ÑÁö ¾Ê´Â ÁÖ¼Ò Á¤º¸·Î ±â¼úÇÑ´Ù°í ÇÏ´Â Á¦¾àÀÌ ÀÖ´Ù. Á¦¾àÀº RFC 2373¿¡ ¾Ï¹¬ÀûÀ¸·Î ³ªÅ¸³ª°í ÀÖÁö¸¸, ¹®¹ý¿¡¼´Â Ç¥ÇöÇÒ ¼ö ¾ø´Ù
¡¸±× ¿Ü¡¹ÀÇ Ä«Å×°í¸®³»ÀÇ ¹®ÀÚ´Â RFC 2396 ·Î ¡¸À̽ºÄÉÀÌÇÁ¡¹8ÁßâÀ» Çã°¡Çϰí ÀÖ´Â °÷(Áß), Áï »ç¿ëÀÚ Á¤º¸, ÆÐ½º, Äõ¸® ¹× fragmentÀÇ °¢ ÄÄÆÛ³ÍÆ®¿Í ±ÇÇÑÀÌ ·¹Áö½ºÆ®¸® º£À̽ºÀÇ °æ¿ì´Â ±ÇÇÑ ÄÄÆÛ³ÍÆ®·Î Çã°¡µÈ´Ù. À̰Ϳ¡ ÀÇÇØ URI¿¡ US-ASCII ij¸¯Åͼ ÀÌ¿ÜÀÇ Unicode ¹®ÀÚ¸¦ Æ÷ÇÔÇÒ ¼ö°¡ ÀÖ´Ù
str
- URI¿¡ ÇØ¼®µÇ´Â ij¸¯ÅÍ ¶óÀÎ
NullPointerException
- str°¡ nullÀÎ °æ¿ì
URISyntaxException
- »ó±âÀÇ º¯°æÀ¸·Î Ãß°¡µÈ °Íó·³, ÁöÁ¤µÈ ij¸¯ÅÍ ¶óÀÎÀÌ RFC 2396¿¡ À§¹ÝÇϰí ÀÖ´Â °æ¿ìpublic URI(String scheme, String userInfo, String host, int port, String path, String query, String fragment) throws URISyntaxException
schema°¡ ÁöÁ¤µÇ¾î ¶ÇÇÑ ÆÐ½ºµµ ÁöÁ¤µÇ´Â °æ¿ì´Â ÆÐ½º´Â °ø¹éÀ̳ª slash ( ¡¸/¡¹)·Î ½ÃÀÛµÉ Çʿ䰡 ÀÖ½À´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì, »õ·Î¿î URI ÄÄÆÛ³ÍÆ®´Â ´ëÀÀÇÏ´Â ÆÄ¶ó¹ÌÅÍ¿¡ nullÀ» °Ç³×ÁÖ´ÂÁö, port ÆÄ¶ó¹ÌÅÍÀÇ °æ¿ì´Â -1À» °Ç³×ÁÖ¾î, ¹ÌÁ¤µµ¸®´ë·Î µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
ÃÖÃÊ·Î ÀÌ »ý¼ºÀÚ´Â ¡¸RFC 2396¡¹¼½¼Ç 5. 2, ½ºÅÜ 7 ·Î °¡¸®Å°´Â ±ÔÄ¢¿¡ µû¶ó ÁöÁ¤µÈ ÄÄÆÛ³ÍÆ®·ÎºÎÅÍ URI ij¸¯ÅÍ ¶óÀÎÀ» ±¸ÃàÇÕ´Ï´Ù.
óÀ½Àº °á°úÀÇ Ä³¸¯ÅÍ ¶óÀÎÀº °ø¹éÀÌ´Ù
schema°¡ ÁöÁ¤µÇ´Â °æ¿ì, ±× schema´Â °á°ú¿¡ Ãß°¡µÇ¾î ±¸µÎÁ¡ ( ¡¸:¡¹)ÀÌ °è¼ÓµÈ´Ù
»ç¿ëÀÚ Á¤º¸, È£½ºÆ®, ¶Ç´Â Æ÷Æ®°¡ ÁöÁ¤µÇ´Â °æ¿ì´Â ij¸¯ÅÍ ¶óÀÎ ¡¸//¡¹ÀÌ Ãß°¡µÈ´Ù
»ç¿ëÀÚ Á¤º¸°¡ ÁöÁ¤µÇ´Â °æ¿ì, ±× »ç¿ëÀÚ Á¤º¸°¡ Ãß°¡µÇ¾î, ´Ü°¡ ±âÈ£ ( ¡¸@¡¹)°¡ °è¼ÓµÈ´Ù. ¡¸¹Ì¿¹¾à¡¹, ¡¸±¸µÎÁ¡¡¹, ¡¸À̽ºÄÉÀÌÇÁ¡¹, ¶Ç´Â ¡¸±× ¿Ü¡¹ÀÇ Ä«Å×°í¸®¿¡ ¾ø´Â ¹®ÀÚ´Â ¸ðµÎÀοëºÎÈ£·Î µÑ·¯½ÎÀδÙ
È£½ºÆ®°¡ ÁöÁ¤µÇ´Â °æ¿ì, ±× È£½ºÆ®°¡ Ãß°¡µÈ´Ù. ±× È£½ºÆ®°¡ ¸®ÅÍ·² IPv6 ÁÖ¼Ò·Î ²©¼â¹À½ ( ¡¸[¡¹ ¹× ¡¸]¡¹)À¸·Î µÑ·¯½ÎÀÌÁö ¾ÊÀº °æ¿ì, ²©¼â¹À½ÀÌ Ãß°¡µÈ´Ù
Æ÷Æ® ¹øÈ£°¡ ÁöÁ¤µÇ´Â °æ¿ì, ±¸µÎÁ¡ ( ¡¸:¡¹)ÀÌ Ãß°¡µÇ¾î 10 Áø¼öÀÇ Æ÷Æ® ¹øÈ£°¡ °è¼ÓµÈ´Ù
ÆÐ½º°¡ ÁöÁ¤µÇ´Â °æ¿ì, ±× ÆÐ½º°¡ Ãß°¡µÈ´Ù. ¡¸¹Ì¿¹¾à¡¹, ¡¸±¸µÎÁ¡¡¹, ¡¸À̽ºÄÉÀÌÇÁ¡¹, ¶Ç´Â ¡¸±× ¿Ü¡¹ÀÇ Ä«Å×°í¸®¿¡ ¾ø¾î¼, slash ( ¡¸/¡¹) ¶Ç´Â ´Ü°¡ ±âÈ£ ( ¡¸@¡¹)¿¡ µ¿ÀÏÇÏÁö ¾ÊÀº ¹®ÀÚ´Â ¸ðµÎ ÀοëºÎÈ£·Î µÑ·¯½ÎÀδÙ
Äõ¸®°¡ ÁöÁ¤µÇ´Â °æ¿ì, ¹°À½Ç¥ ( ¡¸? ¡¹)ÀÌ Ãß°¡µÇ¾î, Äõ¸®°¡ °è¼ÓµÈ´Ù. À¯È¿ÇÑ URI ¹®ÀÚ°¡ ¾Æ´Ñ ¹®ÀÚ´Â ¸ðµÎ ÀοëºÎÈ£·Î µÑ·¯½ÎÀδÙ
¸¶Áö¸·À¸·Î fragment°¡ ÁöÁ¤µÇ´Â °æ¿ì, ÇØ½Ã ±âÈ£ ( ¡¸#¡¹)°¡ Ãß°¡µÇ¾î, fragment°¡ °è¼ÓµÈ´Ù. À¯È¿ÇÑ URI ¹®ÀÚ°¡ ¾Æ´Ñ ¹®ÀÚ´Â ¸ðµÎ ÀοëºÎÈ£·Î µÑ·¯½ÎÀδÙ
°á°úÀÇ URI ij¸¯ÅÍ ¶óÀÎÀº °á°ú¿¡ ´ëÇØ¼ URI(String)
»ý¼ºÀÚ¸¦ È£ÃâÇØ, ´ÙÀ½¿¡ parseServerAuthority()
¸Þ¼µå¸¦ È£ÃâÇß´ÂÁö¿Í °°ÀÌ ÇØ, ÇØ¼®µË´Ï´Ù. À̰Ϳ¡ ÀÇÇØ
URISyntaxException
ÀÌ ¹ß»ýµÇ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù.
scheme
- schema¸íuserInfo
- »ç¿ëÀÚ
¸í°ú ÀÎÁõ Á¤º¸host
- È£½ºÆ®¸íport
- Æ÷Æ® ¹øÈ£path
- ÆÐ½ºquery
- Äõ¸®fragment
- fragment
URISyntaxException
- schema¿Í ÆÐ½ºÀÇ ¾çÂÊ ¸ðµÎ°¡ ÁöÁ¤µÇ°í ÀÖÁö¸¸ ÆÐ½º°¡ »ó´ëÀÇ °æ¿ì, ÁöÁ¤µÈ ÄÄÆÛ³ÍÆ®·ÎºÎÅÍ ±¸ÃàµÈ URI ij¸¯ÅÍ ¶óÀÎÀÌ RFC 2396¿¡ À§¹ÝÇÏ´Â °æ¿ì, ¶Ç´Â ij¸¯ÅÍ ¶óÀÎÀÇ ±ÇÇÑ ÄÄÆÛ³ÍÆ®°¡ Á¸ÀçÇÏÁö¸¸ ¼¹ö º£À̽ºÀÇ ±ÇÇÑÀ¸·Î¼ ÇØ¼®ÇÒ ¼ö ¾ø´Â °æ¿ìpublic URI(String scheme, String authority, String path, String query, String fragment) throws URISyntaxException
schema°¡ ÁöÁ¤µÇ¾î ¶ÇÇÑ ÆÐ½ºµµ ÁöÁ¤µÇ´Â °æ¿ì´Â ÆÐ½º´Â °ø¹éÀ̳ª slash ( ¡¸/¡¹)·Î ½ÃÀÛµÉ Çʿ䰡 ÀÖ½À´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì, »õ·Î¿î URI ÄÄÆÛ³ÍÆ®´Â ´ëÀÀÇÏ´Â ÆÄ¶ó¹ÌÅÍ¿¡ nullÀ» °Ç³×ÁÖ¾î ¹ÌÁ¤µµ¸®´ë·Î µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
ÃÖÃÊ·Î ÀÌ »ý¼ºÀÚ´Â ¡¸RFC 2396¡¹¼½¼Ç 5. 2, ½ºÅÜ 7 ·Î °¡¸®Å°´Â ±ÔÄ¢¿¡ µû¶ó ÁöÁ¤µÈ ÄÄÆÛ³ÍÆ®·ÎºÎÅÍ URI ij¸¯ÅÍ ¶óÀÎÀ» ±¸ÃàÇÕ´Ï´Ù.
óÀ½Àº °á°úÀÇ Ä³¸¯ÅÍ ¶óÀÎÀº °ø¹éÀÌ´Ù
schema°¡ ÁöÁ¤µÇ´Â °æ¿ì, ±× schema´Â °á°ú¿¡ Ãß°¡µÇ¾î ±¸µÎÁ¡ ( ¡¸:¡¹)ÀÌ °è¼ÓµÈ´Ù
±ÇÇÑÀÌ ÁöÁ¤µÇ´Â °æ¿ì, ij¸¯ÅÍ ¶óÀÎ ¡¸//¡¹ÀÌ Ãß°¡µÇ¾î, ±ÇÇÑÀÌ °è¼ÓµÈ´Ù. ±ÇÇÑÀ¸·Î ¸®ÅÍ·² IPv6 ÁÖ¼Ò°¡ Æ÷ÇԵǴ °æ¿ì, ±× ÁÖ¼Ò´Â ²©¼â¹À½ ( ¡¸[¡¹ ¹× ¡¸]¡¹)À¸·Î µÑ·¯½Ò Çʿ䰡 ÀÖ´Ù. ¡¸¹Ì¿¹¾à¡¹, ¡¸±¸µÎÁ¡¡¹, ¡¸À̽ºÄÉÀÌÇÁ¡¹, ¶Ç´Â ¡¸±× ¿Ü¡¹ÀÇ Ä«Å×°í¸®¿¡ ¾ø¾î¼, ´Ü°¡ ±âÈ£ ( ¡¸@¡¹)¿¡ µ¿ÀÏÇÏÁö ¾ÊÀº ¹®ÀÚ´Â ¸ðµÎÀοëºÎÈ£·Î µÑ·¯½ÎÀδÙ
ÆÐ½º°¡ ÁöÁ¤µÇ´Â °æ¿ì, ±× ÆÐ½º°¡ Ãß°¡µÈ´Ù. ¡¸¹Ì¿¹¾à¡¹, ¡¸±¸µÎÁ¡¡¹, ¡¸À̽ºÄÉÀÌÇÁ¡¹, ¶Ç´Â ¡¸±× ¿Ü¡¹ÀÇ Ä«Å×°í¸®¿¡ ¾ø¾î¼, slash ( ¡¸/¡¹) ¶Ç´Â ´Ü°¡ ±âÈ£ ( ¡¸@¡¹)¿¡ µ¿ÀÏÇÏÁö ¾ÊÀº ¹®ÀÚ´Â ¸ðµÎ ÀοëºÎÈ£·Î µÑ·¯½ÎÀδÙ
Äõ¸®°¡ ÁöÁ¤µÇ´Â °æ¿ì, ¹°À½Ç¥ ( ¡¸? ¡¹)ÀÌ Ãß°¡µÇ¾î, Äõ¸®°¡ °è¼ÓµÈ´Ù. À¯È¿ÇÑ URI ¹®ÀÚ°¡ ¾Æ´Ñ ¹®ÀÚ´Â ¸ðµÎ ÀοëºÎÈ£·Î µÑ·¯½ÎÀδÙ
¸¶Áö¸·À¸·Î fragment°¡ ÁöÁ¤µÇ´Â °æ¿ì, ÇØ½Ã ±âÈ£ ( ¡¸#¡¹)°¡ Ãß°¡µÇ¾î, fragment°¡ °è¼ÓµÈ´Ù. À¯È¿ÇÑ URI ¹®ÀÚ°¡ ¾Æ´Ñ ¹®ÀÚ´Â ¸ðµÎ ÀοëºÎÈ£·Î µÑ·¯½ÎÀδÙ
°á°úÀÇ URI ij¸¯ÅÍ ¶óÀÎÀº °á°ú¿¡ ´ëÇØ¼ URI(String)
»ý¼ºÀÚ¸¦ È£ÃâÇØ, ´ÙÀ½¿¡ parseServerAuthority()
¸Þ¼µå¸¦ È£ÃâÇß´ÂÁö¿Í °°ÀÌ ÇØ, ÇØ¼®µË´Ï´Ù. À̰Ϳ¡ ÀÇÇØ
URISyntaxException
ÀÌ ¹ß»ýµÇ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù.
scheme
- schema¸íauthority
- 񀀥path
- ÆÐ½ºquery
- Äõ¸®fragment
- fragment
URISyntaxException
- schema¿Í ÆÐ½ºÀÇ ¾çÂÊ ¸ðµÎ°¡ ÁöÁ¤µÇ°í ÀÖÁö¸¸ ÆÐ½º°¡ »ó´ëÀÇ °æ¿ì, ÁöÁ¤µÈ ÄÄÆÛ³ÍÆ®·ÎºÎÅÍ ±¸ÃàµÈ URI ij¸¯ÅÍ ¶óÀÎÀÌ RFC 2396¿¡ À§¹ÝÇÏ´Â °æ¿ì, ¶Ç´Â ij¸¯ÅÍ ¶óÀÎÀÇ ±ÇÇÑ ÄÄÆÛ³ÍÆ®°¡ Á¸ÀçÇÏÁö¸¸ ¼¹ö º£À̽ºÀÇ ±ÇÇÑÀ¸·Î¼ ÇØ¼®ÇÒ ¼ö ¾ø´Â °æ¿ìpublic URI(String scheme, String host, String path, String fragment) throws URISyntaxException
ÄÄÆÛ³ÍÆ®´Â nullÀ» °Ç³×ÁÖ¾î ¹ÌÁ¤µµ¸®´ë·Î µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
ÀÌ °£ÀÌ »ý¼ºÀÚ´Â ´ÙÀ½°ú °°ÀÌ 7°³ÀÇ ÀμöÀÇ »ý¼ºÀÚ¸¦ È£ÃâÇÏ´Â°Í °°ÀÌ µ¿ÀÛÇÕ´Ï´Ù.
new URI
(scheme, null, host, -1, path, null, fragment);
scheme
- schema¸íhost
- È£½ºÆ®¸ípath
- ÆÐ½ºfragment
- fragment
URISyntaxException
- ÁöÁ¤µÈ ÄÄÆÛ³ÍÆ®·ÎºÎÅÍ ±¸ÃàÇÑ URI ij¸¯ÅÍ ¶óÀÎÀÌ RFC 2396¿¡ À§¹ÝÇÏ´Â °æ¿ìpublic URI(String scheme, String ssp, String fragment) throws URISyntaxException
ÄÄÆÛ³ÍÆ®´Â nullÀ» °Ç³×ÁÖ¾î ¹ÌÁ¤µµ¸®´ë·Î µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
ÃÖÃÊ·Î ÀÌ »ý¼ºÀÚ´Â ÁöÁ¤µÈ ÄÄÆÛ³ÍÆ®¸¦ »ç¿ëÇØ, ´ÙÀ½°ú °°ÀÌ Ä³¸¯ÅÍ ¶óÀÎ Çü½Ä¿¡¼ URI¸¦ ±¸ÃàÇÕ´Ï´Ù.
óÀ½Àº °á°úÀÇ Ä³¸¯ÅÍ ¶óÀÎÀº °ø¹é3ÀÌ´Ù
schema°¡ ÁöÁ¤µÇ´Â °æ¿ì, ±× schema´Â °á°ú¿¡ Ãß°¡µÇ¾î ±¸µÎÁ¡ ( ¡¸:¡¹)ÀÌ °è¼ÓµÈ´Ù
schema °íÀ¯ ºÎºÐÀÌ ÁöÁ¤µÇ´Â °æ¿ì, ±× schema °íÀ¯ ºÎºÐÀÌ Ãß°¡µÈ´Ù. À¯È¿ÇÑ URI ¹®ÀÚ°¡ ¾Æ´Ñ ¹®ÀÚ´Â ¸ðµÎÀοëºÎÈ£·Î µÑ·¯½ÎÀδÙ
¸¶Áö¸·À¸·Î fragment°¡ ÁöÁ¤µÇ´Â °æ¿ì, ÇØ½Ã ±âÈ£ ( ¡¸#¡¹)°¡ ij¸¯ÅÍ ¶óÀο¡ Ãß°¡µÇ¾î, fragment°¡ °è¼ÓµÈ´Ù. À¯È¿ÇÑ URI ¹®ÀÚ°¡ ¾Æ´Ñ ¹®ÀÚ´Â ¸ðµÎ ÀοëºÎÈ£·Î µÑ·¯½ÎÀδÙ
°á°úÀÇ URI ij¸¯ÅÍ ¶óÀÎÀº »õ·Î¿î URI ÀνºÅϽº¸¦ ÀÛ¼ºÇϱâ À§Çؼ
URI(String)
»ý¼ºÀÚ¸¦ È£ÃâÇß´ÂÁö¿Í °°ÀÌÀÇÇØ ÇØ¼®µË´Ï´Ù. À̰Ϳ¡ ÀÇÇØ
URISyntaxException
ÀÌ ¹ß»ýµÇ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù.
scheme
- schema¸íssp
- schema °íÀ¯ ºÎºÐfragment
- fragment
URISyntaxException
- ÁöÁ¤µÈ ÄÄÆÛ³ÍÆ®·ÎºÎÅÍ ±¸ÃàÇÑ URI ij¸¯ÅÍ ¶óÀÎÀÌ RFC 2396¿¡ À§¹ÝÇÏ´Â °æ¿ì¸Þ¼µåÀÇ »ó¼¼ |
---|
public static URI create(String str)
ÀÌ °£ÀÌ ÆÑÅ丮 ¸Þ¼µå´Â URI(String)
»ý¼ºÀÚ¸¦ È£ÃâÇß´ÂÁö¿Í °°ÀÌÀÇÇØ µ¿ÀÛÇÕ´Ï´Ù. »ý¼ºÀڷκÎÅÍ ¹ß»ýµÇ´Â URISyntaxException
´Â ¸ðµÎ ijġ µÇ¾î »õ·Î¿î IllegalArgumentException
°´Ã¼¿¡ ·¦ µÇ¾î ±× ÈÄ ¹ß»ý µË´Ï´Ù.
ÀÌ ¸Þ¼µå´Â ÁöÁ¤µÈ ij¸¯ÅÍ ¶óÀÎÀÌ À¯È¿ÇÑ URI ÀÎ °ÍÀÌ ±âÁ¸ÀÇ °æ¿ì (¿¹¸¦ µé¾î
ÇÁ·Î±×·¥³»¿¡¼ ¼±¾ðµÇ´Â URI Á¤¼ö)¿¡ »ç¿ëÇϱâ À§Çؼ Á¦°øµÇ°í ÀÖ½À´Ï´Ù. µû¶ó¼, ij¸¯ÅÍ ¶óÀÎÀÌ ÀÌ¿Í °°ÀÌ ÇØ¼®µÇÁö ¾ÊÀ¸¸é program error¶ó°í º¸¿©Áý´Ï´Ù. URISyntaxException
¸¦
Á÷Á¢ Throw ÇÏ´Â »ý¼ºÀÚ´Â URI°¡ »ç¿ëÀÚ
ÀÔ·ÂÀ̳ª ¿¡·¯°¡ ¹ß»ýÇϱ⠽¬¿î ±× ¿ÜÀÇ ¼Ò½º·ÎºÎÅÍ ±¸ÃàµÇ´Â °æ¿ì¿¡ »ç¿ëÇÕ´Ï´Ù.
str
- URI¿¡ ÇØ¼®µÇ´Â ij¸¯ÅÍ ¶óÀÎ
NullPointerException
- str°¡ nullÀÎ °æ¿ì
IllegalArgumentException
- ÁöÁ¤µÈ ij¸¯ÅÍ ¶óÀÎÀÌ RFC 2396¿¡ À§¹ÝÇÏ´Â °æ¿ìpublic URI parseServerAuthority() throws URISyntaxException
ÀÌ URI ±ÇÇÑ ÄÄÆÛ³ÍÆ®°¡ ÀÌ¹Ì ¼¹ö º£À̽ºÀÌ´Ù°í Àνĵǰí ÀÖ´Â °æ¿ì´Â ÀÌ¹Ì »ç¿ëÀÚ Á¤º¸, È£½ºÆ® ¹× Æ÷Æ®ÀÇ °¢ ÄÄÆÛ³ÍÆ®¿¡ ÇØ¼®µÇ°í ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì ¶Ç´Â ÀÌ URI¿¡ ±ÇÇÑ ÄÄÆÛ³ÍÆ®°¡ ¾ø´Â °æ¿ì, ÀÌ ¸Þ¼µå´Â ÀÌ URI¸¦ µ¹·ÁÁÙ »ÓÀÔ´Ï´Ù.
±×·¸Áö ¾ÊÀº °æ¿ì, ÀÌ ¸Þ¼µå´Â ±ÇÇÑ ÄÄÆÛ³ÍÆ®·ÎºÎÅÍ »ç¿ëÀÚ Á¤º¸, È£½ºÆ® ¹× Æ÷Æ®ÀÇ °¢ ÄÄÆÛ³ÍÆ®¿¡ÀÇ ÇØ¼®À» Çѹø ´õ ½ÃµµÇØ ±ÇÇÑ ÄÄÆÛ³ÍÆ®¸¦ ±×ó·³ ÇØ¼®ÇÒ ¼ö ¾ø¾ú´ø ÀÌÀ¯¸¦ ¼³¸íÇÏ´Â ¿¹¿Ü¸¦ Throw ÇÕ´Ï´Ù.
ÀÌ ¸Þ¼µå´Â RFC 2396 ·Î °¡¸®Å°´Â ÀÏ¹Ý URI ±¸¹®ÀÌ ¹«È¿ÀÎ ¼¹ö º£À̽º ±ÇÇѰú À¯È¿ÇÑ ·¹Áö½ºÆ®¸® º£À̽º ±ÇÇÑÀ» ¹Ýµå½Ã ±¸º°ÇÒ ¼ö ¾ø±â À§ÇØ ÁغñµÇ¾î ÀÖ½À´Ï´Ù. µû¶ó¼, ¼¹ö º£À̽º ±ÇÇÑÀÇ ÀϺÎÀÇ ÀνºÅϽº¸¦ ·¹Áö½ºÆ®¸® º£À̽º ±ÇÇÑÀÇ ÀνºÅϽº·Î¼ Ãë±ÞÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î URI ij¸¯ÅÍ ¶óÀÎ ¡¸//foo:bar¡¹µîÀÇ ±ÇÇÑ ÄÄÆÛ³ÍÆ®´Â À¯È¿ÇÑ ¼¹ö º£À̽º ±ÇÇÑÀÌ ¾Æ´Õ´Ï´Ù¸¸, ·¹Áö½ºÆ®¸® º£À̽º ±ÇÇÑÀ¸·Î¼´Â À¯È¿ÇÕ´Ï´Ù.
URN ¶Ç´Â URL ÀÎ °ÍÀÌ ±âÁ¸ÀÇ URI¸¦ »ç¿ëÇÏ´Â °Í °°Àº ¸¹Àº ÀϹÝÀûÀÎ »óȲ¿¡¼´Â »ç¿ëµÇ´Â °èÃþ URI´Â Ç×»ó ¼¹ö º£À̽ºÀÔ´Ï´Ù. µû¶ó¼, ±×ó·³ ÇØ¼®ÇÏ´ÂÁö, ¿¡·¯·Î¼ Ãë±ÞÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì ´ÙÀ½°ú °°Àº ¹®ÀåÀº,
URI u = new URI(str). parseServerAuthority();
u°¡ ÀûÀýÇÑ »ç¿ëÀÚ Á¤º¸, È£½ºÆ® ¹× Æ÷Æ®ÀÇ °¢ ÄÄÆÛ³ÍÆ®°¡ ÀÖ´Â ¼¹ö º£À̽º ±ÇÇÑÀ» °¡Áö´Â URI (±ÇÇÑ ÄÄÆÛ³ÍÆ®¸¦ °¡Áö´Â °æ¿ì)¸¦ Ç×»ó ÂüÁ¶Çϵµ·Ï Çϱâ À§Çؼ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶Ç, ÀÌ ¸Þ¼µå¸¦ È£ÃâÇϸé, ±ÇÇÑÀ» ±×ó·³ ÇØ¼®ÇÒ ¼ö ¾ø¾ú´ø °æ¿ì¿¡ ¹ß»ýµÇ´Â ¿¹¿Ü¿¡ ±Ù°ÅÇØ ÀûÀýÇÑ Áø´Ü ¸Þ¼¼Áö¸¦ ¹ßÇàÇϵµ·Ï ÇÒ ¼ö ÀÖ½À´Ï´Ù.
URISyntaxException
- ÀÌ URI
±ÇÇÑ ÄÄÆÛ³ÍÆ®°¡ ÁöÁ¤µÇ°í ÀÖÁö¸¸, RFC 2396¿¡ µû¶ó ¼¹ö º£À̽º ±ÇÇÑÀ¸·Î¼ ÇØ¼®ÇÒ ¼ö ¾ø´Â °æ¿ìpublic URI normalize()
ÀÌ URI°¡ ºÒÅõ¸íÇÑ °æ¿ì, ¶Ç´Â ±× ÆÐ½º°¡ ÀÌ¹Ì Á¤±Ô Çü½ÄÀÎ °æ¿ì´Â ÀÌ URI°¡ ¸®Åϵ˴ϴ٠. ±×·¸Áö ¾ÊÀº °æ¿ì´Â ÀÌ URI¿Í °°Àº »õ·Î¿î URI°¡ ±¸ÃàµË´Ï´Ù. ´Ù¸¸, ±× ÆÐ½º°¡¡¸RFC 2396¡¹¼½¼Ç 5. 2, ½ºÅÜ 6, ¼ºê ½ºÅÜ c ~ f¿¡ ÀûÇÕÇÏ´Â ¹æ¹ýÀ¸·Î ÀÌ URI ÆÐ½º¸¦ Á¤±ÔÈÇØ ±¸ÇÒ ¼ö ÀÖ´Â °æ¿ì¸¦ Á¦¿ÜÇÕ´Ï´Ù. À̰ÍÀº ´ÙÀ½°ú °°ÀÌ µË´Ï´Ù.
¸ðµç ¡¸. ¡¹¼¼±×¸ÕÆ®(segment)°¡ »èÁ¦µÈ´Ù
¡¸..¡¹¼¼±×¸ÕÆ®(segment)ÀÇ Àü¿¡ ¡¸..¡¹(ÀÌ)°¡ ¾Æ´Ñ ¼¼±×¸ÕÆ®(segment)°¡ ÀÖ´Â °æ¿ì, ÀÌ·¯ÇÑ ¼¼±×¸ÕÆ®(segment)´Â ¾çÂÊ ¸ðµÎ »èÁ¦µÈ´Ù. ÀÌ ½ºÅÜÀº ÇØ´çÇÏ´Â °ÍÀÌ ¾ø¾îÁú ¶§±îÁö ¹Ýº¹ÇØÁø´Ù
ÆÐ½º°¡ »ó´ë·Î ÃÖÃÊÀÇ ¼¼±×¸ÕÆ®(segment)¿¡ ±¸µÎÁ¡ ( ¡¸:¡¹)ÀÌ Æ÷ÇԵǴ °æ¿ì, ¡¸. ¡¹¼¼±×¸ÕÆ®(segment)°¡ Àü¿¡ Ãß°¡µÈ´Ù. À̰Ϳ¡ ÀÇÇØ ¡¸a:b/c/d¡¹µîÀÇ ÆÐ½º¸¦ °¡Áö´Â »ó´ë URI°¡ ³ªÁß¿¡ ¡¸a¡¹ÀÇ schema ¹× ¡¸b/c/d¡¹ÀÇ schema °íÀ¯ ºÎºÐÀ» »ç¿ëÇØ ºÒÅõ¸í URI ·Î¼ ÀçÂ÷ ÇØ¼®µÇÁö ¾Ê°Ô ÇÑ´Ù (RFC 2396¸¦ º¯°æÇÑ °Í)
Á¤±ÔÈµÈ ÆÐ½º´Â »èÁ¦¸¦ °¡´ÉÇÏ°Ô ÇÏ´Â ¡¸..¡¹(ÀÌ)°¡ ¾Æ´Ñ ¼±ÇàÀÇ ¼¼±×¸ÕÆ®(segment)°¡ ºÒÃæºÐÇß´ø °æ¿ì, 1°³ ÀÌ»óÀÇ ¡¸..¡¹¼¼±×¸ÕÆ®(segment)·Î ½ÃÀ۵˴ϴÙ. Á¤±ÔÈµÈ ÆÐ½º´Â »ó±âÀÇ ½ºÅÜ 3 À¸·Î »ðÀÔ ÅëÁö °æ¿ì, ¡¸. ¡¹¼¼±×¸ÕÆ®(segment)·Î ½ÃÀ۵˴ϴÙ. ±×·¸Áö ¾ÊÀº °æ¿ì, Á¤±ÔÈµÈ ÆÐ½º¿¡´Â ¡¸. ¡¹¶Ç´Â ¡¸..¡¹¼¼±×¸ÕÆ®(segment)´Â Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.
public URI resolve(URI uri)
ÁöÁ¤µÈ URI°¡ ÀÌ¹Ì Àý´ëÀÎ °æ¿ì, ¶Ç´Â ÀÌ URI°¡ ºÒÅõ¸íÇÑ °æ¿ì´Â ÁöÁ¤µÈ URI°¡ ¸®Åϵ˴ϴ٠.
ÁöÁ¤µÈ URI fragment ÄÄÆÛ³ÍÆ®°¡ Á¤ÀÇµÇ¾î ±× ÆÄ½ºÄÜÆ÷³ÙÆ®°¡ °ø¹é¿¡¼ ±× schema, ±ÇÇÑ ¹× Äõ¸®ÀÇ °¢ ÄÄÆÛ³ÍÆ®°¡ ¹ÌÁ¤µµ¸®ÀÇ °æ¿ì´Â ÁöÁ¤µÈ fragment¸¦ °¡ÁöÁö¸¸, ´Ù¸¥ ¸ðµç ÄÄÆÛ³ÍÆ®°¡ ÀÌ URI ÄÄÆÛ³ÍÆ®¿Í µ¿ÀÏÇÑ URI°¡ ¸®Åϵ˴ϴ٠. À̰Ϳ¡ ÀÇÇØ ¡¸#foo¡¹µîÀÇ ½ºÅĵå¾ó·Ð fragment ÂüÁ¶¸¦ ³ªÅ¸³»´Â URI¸¦ º£À̽º URI¿¡ ´ëÇØ¼ À¯È¿ÇÏ°Ô ÇØ°áÇÒ ¼ö ÀÖ½À´Ï´Ù .
±×·¸Áö ¾ÊÀº °æ¿ì, ÀÌ ¸Þ¼µå´Â ¡¸RFC 2396¡¹¼½¼Ç 5. 2¿¡ ÀûÇÕÇÏ´Â ¹æ¹ýÀ¸·Î ´ÙÀ½°ú °°ÀÌ »õ·Î¿î °èÃþ URI¸¦ ±¸ÃàÇÕ´Ï´Ù.
ÀÌ URI ½ºÅ´°ú ÁöÁ¤µÈ URI Äõ¸® ¹× fragment ÄÄÆÛ³ÍÆ®¸¦ »ç¿ëÇØ, »õ·Î¿î URI°¡ ±¸ÃàµÈ´Ù
ÁöÁ¤µÈ URI¿¡ ±ÇÇÑ ÄÄÆÛ³ÍÆ®°¡ ÀÖ´Â °æ¿ì, »õ·Î¿î URI ±ÇÇѰú ÆÐ½º´Â ÁöÁ¤µÈ URI ·ÎºÎÅÍ ³õÄ£´Ù
±×·¸Áö ¾ÊÀº °æ¿ì, »õ·Î¿î URI ±ÇÇÑ ÄÄÆÛ³ÍÆ®°¡ ÀÌ URI ·ÎºÎÅÍ Ä«ÇÇµÇ¾î ±× ÆÐ½º´Â ´ÙÀ½°ú °°ÀÌÀÇÇØ ±¸ÇÒ ¼ö ÀÖ´Ù
ÁöÁ¤µÈ URI ÆÐ½º°¡ Àý´ëÀÇ °æ¿ì, »õ·Î¿î URI ÆÐ½º´Â ÁöÁ¤µÈ URI ·ÎºÎÅÍ ³õÄ£´Ù
±×·¸Áö ¾ÊÀº °æ¿ì, ÁöÁ¤µÈ URI
ÆÐ½º´Â »ó´ë·Î »õ·Î¿î URI
ÆÐ½º´Â ÁöÁ¤µÈ URI
ÆÐ½º¸¦ ÀÌ URI
ÆÐ½º¿¡ ´ëÇØ¼ ÇØ°áÇØ ±¸ÇÒ ¼ö ÀÖ´Ù. À̰ÍÀº ÀÌ URI
ÆÐ½ºÀÇ ¸¶Áö¸· ¼¼±×¸ÕÆ®(segment) ÀÌ¿ÜÀÇ ¸ðµç ¼¼±×¸ÕÆ®(segment) (Á¸ÀçÇÏ´Â °æ¿ì)°¡ ÁöÁ¤µÈ URI
ÆÐ½º¿Í ¿¬°áÇØ, ±× °á°ú¸¦ normalize
¸Þ¼µå¸¦ È£ÃâÇß´ÂÁö¿Í °°ÀÌÀÇÇØ Á¤±ÔÈÇÏ´Â °Í¿¡ ÀÇÇØ ÇàÇØÁø´Ù
ÀÌ ¸Þ¼µåÀÇ °á°ú´Â ÀÌ URI°¡ Àý´ëÀÇ °æ¿ì, ¶Ç´Â ÁöÁ¤µÈ URI°¡ Àý´ëÀÇ °æ¿ì¿¡¸¸, Àý´ë·Î µË´Ï´Ù.
uri
- ÀÌ URI¿¡ ´ëÇØ¼ ÇØ°áµÇ´Â URI
NullPointerException
- uri°¡ nullÀÎ °æ¿ìpublic URI resolve(String str)
ÀÌ °£ÀÌ ¸Þ¼µå´Â ÀÌ ¸Þ¼µåÀÇ È£ÃâÀÌ ½Ä resolve
(URI. create
(str))
Æò°¡¿Í °°Àº°¡¿Í °°ÀÌ µ¿ÀÛÇÕ´Ï´Ù.
str
- URI¿¡ ÇØ¼®µÇ´Â ij¸¯ÅÍ ¶óÀÎ
NullPointerException
- str°¡ nullÀÎ °æ¿ì
IllegalArgumentException
- ÁöÁ¤µÈ ij¸¯ÅÍ ¶óÀÎÀÌ RFC 2396¿¡ À§¹ÝÇÏ´Â °æ¿ìpublic URI relativize(URI uri)
ÁöÁ¤µÈ URI ÀÌ URI¿¡ ´ëÇÑ »ó´ëÈ´Â ´ÙÀ½°ú °°ÀÌÀÇÇØ ±¸ÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÀÌ URI ¶Ç´Â ÁöÁ¤µÈ URI°¡ ºÒÅõ¸íÇÑ °æ¿ì, 2°³ÀÇ URI schema¿Í ±ÇÇÑ ÄÄÆÛ³ÍÆ®°¡ °°Áö ¾ÊÀº °æ¿ì, ¶Ç´Â ÀÌ URI ÆÐ½º°¡ ÁöÁ¤µÈ URI ÆÐ½ºÀÇ Á¢µÎ»ç°¡ ¾Æ´Ñ °æ¿ì´Â ÁöÁ¤µÈ URI°¡ ¸®ÅϵȴÙ
±×·¸Áö ¾ÊÀº °æ¿ì, ÁöÁ¤µÈ URI ·ÎºÎÅÍ ³õÄ£ Äõ¸® ¹× fragment ÄÄÆÛ³ÍÆ®¿Í ÁöÁ¤µÈ URI ÆÐ½ºÀÇ ¼±µÎ·ÎºÎÅÍ ÀÌ URI ÆÐ½º¸¦ »èÁ¦ÇØ ¿ä±¸ÇÑ ÆÄ½ºÄÜÆ÷³ÙÆ®¸¦ »ç¿ëÇØ, »õ·Î¿î »ó´ë °èÃþ URI°¡ ±¸ÃàµÈ´Ù
uri
- ÀÌ URI¿¡ ´ëÇØ¼ »ó´ëȵǴ URI
NullPointerException
- uri°¡ nullÀÎ °æ¿ìpublic URL toURL() throws MalformedURLException
ÀÌ °£ÀÌ ¸Þ¼µå´Â ÃÖÃÊ·Î ÀÌ URI°¡ Àý´ëÀÎ °ÍÀ» È®ÀÎÇÏ°í ³ª¼, ÀÌ ¸Þ¼µåÀÇ È£ÃâÀÌ ½Ä new URL(this.toString()) Æò°¡¿Í °°Àº°¡¿Í °°ÀÌ µ¿ÀÛÇÕ´Ï´Ù.
IllegalArgumentException
- ÀÌ URL°¡ Àý´ë°¡ ¾Æ´Ñ °æ¿ì
MalformedURLException
- URL
ÇÁ·ÎÅäÄÝ Çڵ鷯¸¦ ¹ß°ßÇÒ ¼ö ¾ø¾ú´ø °æ¿ì, ¶Ç´Â URL
±¸Ãà½Ã¿¡ ´Ù¸¥ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìpublic String getScheme()
URI schema ÄÄÆÛ³ÍÆ®¿¡´Â (Á¤Àǵǰí ÀÖ´Â °æ¿ì), ¡¸¿µ¼ýÀÚ¡¹Ä«Å×°í¸® ¹× ij¸¯ÅÍ ¶óÀÎ ¡¸-. +¡¹ ¾ÈÀÇ ¹®ÀÚ¸¸ÀÌ Æ÷ÇԵ˴ϴÙ. schema´Â Ç×»ó ¡¸¿µ¹®ÀÚ¡¹·Î ½ÃÀ۵˴ϴÙ.
URI ½ºÅ´ ÄÄÆÛ³ÍÆ®¿¡ À̽ºÄÉÀÌÇÁ 8ÁßâÀ» Æ÷ÇÔÇÒ ¼ö ¾ø½À´Ï´Ù. µû¶ó¼, ÀÌ ¸Þ¼µå´Â º¹È£È¸¦ ½ÇÇàÇÏÁö ¾Ê½À´Ï´Ù.
public boolean isAbsolute()
URI°¡ Àý´ëÀÎ °ÍÀº ±× URI¿¡ schema ÄÄÆÛ³ÍÆ®°¡ ÀÖ´Â °æ¿ì¸¸ÀÔ´Ï´Ù.
public boolean isOpaque()
URI°¡ ºÒÅõ¸íÇÑ °ÍÀº ±× URL°¡ Àý´ë·Î schema °íÀ¯ ºÎºÐÀÌ slash ¹®ÀÚ ( ¡¸/¡¹)·Î ½ÃÀÛµÇÁö ¾Ê´Â °æ¿ì »ÓÀÔ´Ï´Ù. ºÒÅõ¸íÇÑ URI´Â schema, schema °íÀ¯ ºÎºÐ ¹× (°æ¿ì¿¡ µû¶ó¼´Â) fragment¸¦ °¡Áý´Ï´Ù. ±× ¿ÜÀÇ ¸ðµç ÄÄÆÛ³ÍÆ®´Â ¹ÌÁ¤µµ¸®ÀÔ´Ï´Ù.
public String getRawSchemeSpecificPart()
URI schema °íÀ¯ ºÎºÐ¿¡´Â À¯È¿ÇÑ URI ¹®ÀÚ¸¸ÀÌ Æ÷ÇԵ˴ϴÙ.
public String getSchemeSpecificPart()
ÀÌ ¸Þ¼µå·ÎºÎÅÍ ¸®ÅÏµÈ Ä³¸¯ÅÍ ¶óÀÎÀº, getRawSchemeSpecificPart
¸Þ¼µå·ÎºÎÅÍ ¸®ÅÏµÈ Ä³¸¯ÅÍ ¶óÀΰú °°½À´Ï´Ù. ´Ù¸¸, À̽ºÄÉÀÌÇÁ 8ÁßâÀÇ ¼ø¼°¡ ¸ðµÎº¹È£È µÇ´Â °æ¿ì¸¦ Á¦¿ÜÇÕ´Ï´Ù.
public String getRawAuthority()
URI ±ÇÇÑ ÄÄÆÛ³ÍÆ®¿¡´Â (Á¤Àǵǰí ÀÖ´Â °æ¿ì), ´Ü°¡ ±âÈ£ ( ¡¸@¡¹)¿Í ¡¸¹Ì¿¹¾à¡¹, ¡¸±¸µÎÁ¡¡¹, ¡¸À̽ºÄÉÀÌÇÁ¡¹ ¹× ¡¸±× ¿Ü¡¹ÀÇ Ä«Å×°í¸®ÀÇ ¹®ÀÚ¸¸ÀÌ Æ÷ÇԵ˴ϴÙ. ±ÇÇÑÀÌ ¼¹ö º£À̽ºÀÇ °æ¿ì´Â ¶ÇÇÑ À¯È¿ÇÑ »ç¿ëÀÚ Á¤º¸, È£½ºÆ®, Æ÷Æ®ÀÇ °¢ ÄÄÆÛ³ÍÆ®°¡ ÇÊ¿äÇÕ´Ï´Ù.
public String getAuthority()
ÀÌ ¸Þ¼µå·ÎºÎÅÍ ¸®ÅÏµÈ Ä³¸¯ÅÍ ¶óÀÎÀº, getRawAuthority
¸Þ¼µå·ÎºÎÅÍ ¸®ÅÏµÈ Ä³¸¯ÅÍ ¶óÀΰú °°½À´Ï´Ù. ´Ù¸¸, À̽ºÄÉÀÌÇÁ 8ÁßâÀÇ ¼ø¼°¡ ¸ðµÎº¹È£È µÇ´Â °æ¿ì¸¦ Á¦¿ÜÇÕ´Ï´Ù.
public String getRawUserInfo()
URI »ç¿ëÀÚ Á¤º¸ ÄÄÆÛ³ÍÆ®¿¡´Â (Á¤Àǵǰí ÀÖ´Â °æ¿ì), ¡¸¹Ì¿¹¾à¡¹, ¡¸±¸µÎÁ¡¡¹, ¡¸À̽ºÄÉÀÌÇÁ¡¹ ¹× ¡¸±× ¿Ü¡¹ÀÇ Ä«Å×°í¸®ÀÇ ¹®ÀÚ¸¸ÀÌ Æ÷ÇԵ˴ϴÙ.
public String getUserInfo()
ÀÌ ¸Þ¼µå·ÎºÎÅÍ ¸®ÅÏµÈ Ä³¸¯ÅÍ ¶óÀÎÀº, getRawUserInfo
¸Þ¼µå·ÎºÎÅÍ ¸®ÅÏµÈ Ä³¸¯ÅÍ ¶óÀΰú °°½À´Ï´Ù. ´Ù¸¸, À̽ºÄÉÀÌÇÁ 8ÁßâÀÇ ¼ø¼°¡ ¸ðµÎº¹È£È µÇ´Â °æ¿ì¸¦ Á¦¿ÜÇÕ´Ï´Ù.
public String getHost()
URI È£½ºÆ® ÄÄÆÛ³ÍÆ® (Á¤Àǵǰí ÀÖ´Â °æ¿ì)ÀÇ Çü½ÄÀº ´ÙÀ½ÀÇ ¾î¶² °ÍÀΰ¡ÀÔ´Ï´Ù.
ÇǸ®¾îµå ( ¡¸. ¡¹)·Î ±¸ºÐµÈ 1°³ ÀÌ»óÀÇ ¡¸¶óº§¡¹·Î ±¸¼ºµÇ´Â µµ¸ÞÀθí. ÀÓÀÇ·Î ÇǸ®¾îµå°¡ °è¼ÓµÈ´Ù. °¢ ¶óº§Àº ¡¸¿µ¼ýÀÚ¡¹¹®ÀÚ¿Í ÇÏÀÌÇ ( ¡¸-¡¹)À¸·Î ±¸¼ºµÈ´Ù. ´Ù¸¸, ÇÏÀÌÇÂÀº ¶óº§ÀÇ ÃÖÃÊ ¶Ç´Â ¸¶Áö¸· ¹®Àڷμ´Â »ç¿ëÇÒ ¼ö ¾ø´Ù. 2°³ ÀÌ»óÀÇ ¶óº§·Î ±¸¼ºµÇ´Â µµ¸ÞÀθíÀÇ °¡Àå ¿À¸¥ÂÊÀÇ ¶óº§Àº ¡¸¿µ¹®ÀÚ¡¹¹®ÀÚ·Î ½ÃÀ۵ȴÙ
¼ýÀÚ+. ¼ýÀÚ+. ¼ýÀÚ+. ¼ýÀÚ+ Çü½ÄÀÇ, ´åÀ¸·Î 4 °³·Î ±¸ºÐµÈ IPv4 ÁÖ¼Ò. ¿©±â¼, ¼ýÀÚ´Â 3 ¹®ÀÚ À̳»¿¡¼ ±× °ªÀº 255¸¦ ³ÑÁö ¾Ê´Â´Ù
IPv6 ÁÖ¼Ò´Â ²©¼â¹À½ ([ ¹× ])À¸·Î µÑ·¯½Î¿© 16 Áø¼ö, ±¸µÎÁ¡ (:) ¹× (°æ¿ì¿¡ µû¶ó¼´Â) ÆÄ¹¯Èù IPv4 ÁÖ¼Ò·Î ±¸¼ºµÈ´Ù. IPv6 ÁÖ¼ÒÀÇ ¿ÏÀüÇÑ ±¸¹®Àº, ¡¸RFC 2373: IPv6 Addressing Architecture¡¹·Î ÁöÁ¤µÇ°í ÀÖ´Ù
public int getPort()
URI Æ÷Æ® ÄÄÆÛ³ÍÆ®´Â (Á¤Àǵǰí ÀÖ´Â °æ¿ì), ºÎ°¡ ¾Æ´Ñ Á¤¼öÀÔ´Ï´Ù.
public String getRawPath()
URI ÆÄ½ºÄÜÆ÷³ÙÆ®¿¡´Â (Á¤Àǵǰí ÀÖ´Â °æ¿ì), slash ( ¡¸/¡¹), ´Ü°¡ ±âÈ£ ( ¡¸@¡¹)¿Í ¡¸¹Ì¿¹¾à¡¹, ¡¸±¸µÎÁ¡¡¹, ¡¸À̽ºÄÉÀÌÇÁ¡¹ ¹× ¡¸±× ¿Ü¡¹ÀÇ Ä«Å×°í¸®ÀÇ ¹®ÀÚ¸¸ÀÌ Æ÷ÇԵ˴ϴÙ.
public String getPath()
ÀÌ ¸Þ¼µå·ÎºÎÅÍ ¸®ÅÏµÈ Ä³¸¯ÅÍ ¶óÀÎÀº, getRawPath
¸Þ¼µå·ÎºÎÅÍ ¸®ÅÏµÈ Ä³¸¯ÅÍ ¶óÀΰú °°½À´Ï´Ù. ´Ù¸¸, À̽ºÄÉÀÌÇÁ 8ÁßâÀÇ ¼ø¼°¡ ¸ðµÎº¹È£È µÇ´Â °æ¿ì¸¦ Á¦¿ÜÇÕ´Ï´Ù.
public String getRawQuery()
URI Äõ¸®ÄÄÆÛ³ÍÆ®¿¡´Â (Á¤Àǵǰí ÀÖ´Â °æ¿ì), À¯È¿ÇÑ URI ¹®ÀÚ¸¸ÀÌ Æ÷ÇԵ˴ϴÙ.
public String getQuery()
ÀÌ ¸Þ¼µå·ÎºÎÅÍ ¸®ÅÏµÈ Ä³¸¯ÅÍ ¶óÀÎÀº, getRawQuery
¸Þ¼µå·ÎºÎÅÍ ¸®ÅÏµÈ Ä³¸¯ÅÍ ¶óÀΰú °°½À´Ï´Ù. ´Ù¸¸, À̽ºÄÉÀÌÇÁ 8ÁßâÀÇ ¼ø¼°¡ ¸ðµÎº¹È£È µÇ´Â °æ¿ì¸¦ Á¦¿ÜÇÕ´Ï´Ù.
public String getRawFragment()
URI fragment ÄÄÆÛ³ÍÆ®¿¡´Â (Á¤Àǵǰí ÀÖ´Â °æ¿ì), À¯È¿ÇÑ URI ¹®ÀÚ¸¸ÀÌ Æ÷ÇԵ˴ϴÙ.
public String getFragment()
ÀÌ ¸Þ¼µå·ÎºÎÅÍ ¸®ÅÏµÈ Ä³¸¯ÅÍ ¶óÀÎÀº, getRawFragment
¸Þ¼µå·ÎºÎÅÍ ¸®ÅÏµÈ Ä³¸¯ÅÍ ¶óÀΰú °°½À´Ï´Ù. ´Ù¸¸, À̽ºÄÉÀÌÇÁ 8ÁßâÀÇ ¼ø¼°¡ ¸ðµÎº¹È£È µÇ´Â °æ¿ì¸¦ Á¦¿ÜÇÕ´Ï´Ù.
public boolean equals(Object ob)
ÁöÁ¤µÈ °´Ã¼°¡ URI°¡ ¾Æ´Ñ °æ¿ì, ÀÌ ¸Þ¼µå´Â Áï½Ã false¸¦ ¸®ÅÏÇÕ´Ï´Ù.
µ¿ÀÏÇÏ´Ù°í º¸¿©Áö´Â 2°³ÀÇ URI´Â ¾çÂÊ ¸ðµÎ ºÒÅõ¸íÇѰ¡ ¾çÂÊ ¸ðµÎ °èÃþÀÏ Çʿ䰡 ÀÖ½À´Ï´Ù. ±×·¯ÇÑ schema´Â ¾çÂÊ ¸ðµÎ ¹ÌÁ¤µµ¸®Àΰ¡ ´ë¹®ÀÚ/¼Ò¹®ÀÚ¿¡ °ü°è¾øÀÌ µ¿ÀÏÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ±×·¯ÇÑ fragment´Â ¾çÂÊ ¸ðµÎ ¹ÌÁ¤µµ¸®Àΰ¡ µ¿ÀÏÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.
µ¿ÀÏÇÏ´Ù°í º¸¿©Áö´Â 2°³ÀÇ ºÒÅõ¸í URIÀÎ °æ¿ì, ±×·¯ÇÑ schema °íÀ¯ ºÎºÐÀº µ¿ÀÏÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.
µ¿ÀÏÇÏ´Ù°í º¸¿©Áö´Â 2°³ÀÇ °èÃþ URIÀÎ °æ¿ì, ±×·¯ÇÑ ÆÐ½º´Â µ¿ÀÏÇϰí, ÈÖ¾îÁö°íÀÇ Äõ¸®´Â ¾çÂÊ ¸ðµÎ ¹ÌÁ¤µµ¸®Àΰ¡ µ¿ÀÏÇÏÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù. ±×·¯ÇÑ ±ÇÇÑÀº ¾çÂÊ ¸ðµÎ ¹ÌÁ¤µµ¸®Àΰ¡ ¾çÂÊ ¸ðµÎ ·¹Áö½ºÆ®¸® º£À̽ºÀΰ¡ ȤÀº ¾çÂÊ ¸ðµÎ ¼¹ö º£À̽º°¡ ¾Æ´Ï¸é ¾ÈµË´Ï´Ù. ±×·¯ÇÑ ±ÇÇÑÀÌ Á¤Àǵǰí ÀÖ¾î ·¹Áö½ºÆ®¸® º£À̽ºÀÇ °æ¿ì, ±×·¯ÇÑ ±ÇÇÑÀº µ¿ÀÏÇÏÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù. ±×·¯ÇÑ ±ÇÇÑÀÌ Á¤Àǵǰí ÀÖ¾î ¼¹ö º£À̽ºÀÇ °æ¿ì, ±×·¯ÇÑ È£½ºÆ®´Â ´ë¹®ÀÚ/¼Ò¹®ÀÚ¿¡ °ü°è¾øÀÌ µ¿ÀÏÇϰí, ±×·¯ÇÑ Æ÷Æ® ¹øÈ£´Â µ¿ÀÏÇϰí, ±×·¯ÇÑ »ç¿ëÀÚ Á¤º¸ ÄÄÆÛ³ÍÆ®´Â µ¿ÀÏÇÏÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù.
2°³ÀÇ URI »ç¿ëÀÚ Á¤º¸, ÆÐ½º, Äõ¸®, fragment, ±ÇÇÑ, ¶Ç´Â schema °íÀ¯ ºÎºÐÀÌ µ¿ÀÏÇÑÁö ¾î¶²Áö ÆÇÁ¤ÇÏ´Â °æ¿ì, ÀÌ·¯ÇÑ ÄÄÆÛ³ÍÆ®´Â encode µÈ Çü½ÄÀÌ ¾Æ´Ï°í ±×´ë·ÎÀÇ Çü½Ä¿¡¼ ºñ±³µÇ¾î À̽ºÄÉÀÌÇÁ 8ÁßâÀÇ 16 Áø¼ö´Â ´ë¹®ÀÚ/¼Ò¹®ÀÚ¿¡ °ü°è¾øÀÌ ºñ±³µË´Ï´Ù.
ÀÌ ¸Þ¼µå´Â Object.equals
¸Þ¼µåÀÇ ¹ü¿ë ±Ô¾àÀ» ä¿ó´Ï´Ù.
Object
³»ÀÇ equals
ob
- ÀÌ °´Ã¼¿Í ºñ±³ÇÏ´Â °´Ã¼
Object.hashCode()
,
Hashtable
public int hashCode()
Object.hashCode
¸Þ¼µåÀÇ ¹ü¿ë ±Ô¾àÀ» ä¿ó´Ï´Ù.
Object
³»ÀÇ hashCode
Object.equals(java.lang.Object)
,
Hashtable
public int compareTo(URI that)
2°³ÀÇ URI
´ëÀÀÇÏ´Â ÄÄÆÛ³ÍÆ®¸¦ ºñ±³ÇÏ´Â °æ¿ì, ÄÄÆÛ³ÍÆ®ÀÇ ÇÑÆíÀÌ ¹ÌÁ¤µµ¸®·Î ÇÑÆíÀÌ Á¤Àǵǰí ÀÖÀ¸¸é, ÀüÀÚ´Â ÈÄÀÚº¸´Ù ÀÛ´Ù°í º¸¿©Áý´Ï´Ù. ƯÈ÷ ¸í±âµÇ¾î ÀÖÁö ¾ÊÀº ÇÑ, ij¸¯ÅÍ ¶óÀÎ ÄÄÆÛ³ÍÆ®´Â String.compareTo
¸Þ¼µå·Î Á¤Àǵǰí ÀÖµµ·Ï, º»·¡ÀÇ ´ë¹®ÀÚ/¼Ò¹®ÀÚ¸¦ ±¸º°ÇÑ ¼ø¼¿¡ µû¶ó ¼ø¼ ºÙÀÏ ¼ö ÀÖ½À´Ï´Ù. encode µÇ´Â ij¸¯ÅÍ ¶óÀÎ ÄÄÆÛ³ÍÆ®´Â encode µÈ Çü½ÄÀÌ ¾Æ´Ï°í ±×´ë·ÎÀÇ Çü½Ä¿¡¼ ºñ±³µË´Ï´Ù.
URI ¼ø¼´Â ´ÙÀ½°ú °°ÀÌ Á¤Àǵ˴ϴÙ.
´Ù¸¥ schema¸¦ °¡Áö´Â 2°³ÀÇ URI´Â ´ë¹®ÀÚ/¼Ò¹®ÀÚ¿¡ °ü°è¾øÀÌ ±×·¯ÇÑ schemaÀÇ ¼ø¼¿¡ µû¶ó ¼ø¼ ºÙÀÏ ¼ö ÀÖ´Ù
°èÃþ URI´Â °°Àº schema¸¦ °¡Áö´Â ºÒÅõ¸í URI º¸´Ù ÀÛ´Ù°í º¸¿©Áø´Ù
°°Àº schema¸¦ °¡Áö´Â 2°³ÀÇ ºÒÅõ¸í URI´Â ±×·¯ÇÑ schema °íÀ¯ ºÎºÐÀÇ ¼ø¼¿¡ µû¶ó ¼ø¼ ºÙÀÏ ¼ö ÀÖ´Ù
°°Àº schema¿Í schema °íÀ¯ ºÎºÐÀ» °¡Áö´Â 2°³ÀÇ ºÒÅõ¸í URI´Â ±×·¯ÇÑ fragmentÀÇ ¼ø¼¿¡ µû¶ó ¼ø¼ ºÙÀÏ ¼ö ÀÖ´Ù
°°Àº schema¸¦ °¡Áö´Â 2°³ÀÇ °èÃþ URI´Â ±×·¯ÇÑ ±ÇÇÑ ÄÄÆÛ³ÍÆ®ÀÇ ¼ø¼¿¡ µû¶ó ¼ø¼ ºÙÀÏ ¼ö ÀÖ´Ù
¾çÂÊ ¸ðµÎÀÇ ±ÇÇÑ ÄÄÆÛ³ÍÆ®°¡ ¼¹ö º£À̽ºÀÎ °æ¿ì, URI´Â ±×·¯ÇÑ »ç¿ëÀÚ Á¤º¸ ÄÄÆÛ³ÍÆ®¿¡ µû¶ó ¼ø¼ ºÙÀÏ ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ ÄÄÆÛ³ÍÆ®°¡ °°Àº °æ¿ì, URI´Â ´ë¹®ÀÚ/¼Ò¹®ÀÚ¿¡ °ü°è¾øÀÌ ±×·¯ÇÑ È£½ºÆ®ÀÇ ¼ø¼¿¡ µû¶ó ¼ø¼ ºÙÀÏ ¼ö ÀÖ´Ù. È£½ºÆ®°¡ °°Àº °æ¿ì, URI´Â ±×·¯ÇÑ Æ÷Æ®ÀÇ ¼ø¼¿¡ µû¶ó ¼ø¼ ºÙÀÏ ¼ö ÀÖ´Ù
ÇÑÆí ¶Ç´Â ¾çÂÊ ¸ðµÎÀÇ ±ÇÇÑ ÄÄÆÛ³ÍÆ®°¡ ·¹Áö½ºÆ®¸® º£À̽ºÀÎ °æ¿ì, URI´Â ±×·¯ÇÑ ±ÇÇÑ ÄÄÆÛ³ÍÆ®ÀÇ ¼ø¼¿¡ µû¶ó ¼ø¼ ºÙÀÏ ¼ö ÀÖ´Ù
¸¶Áö¸·À¸·Î °°Àº schema¿Í ±ÇÇÑ ÄÄÆÛ³ÍÆ®¸¦ °¡Áö´Â 2°³ÀÇ °èÃþ URI´Â ±×·¯ÇÑ ÆÐ½ºÀÇ ¼ø¼¿¡ µû¶ó ¼ø¼ ºÙÀÏ ¼ö ÀÖ´Ù. ÆÐ½º°¡ °°Àº °æ¿ì, °ø¹éµîÀÇ °èÃþ URI´Â ±×·¯ÇÑ Äõ¸®ÀÇ ¼ø¼¿¡ µû¶ó ¼ø¼ ºÙÀÏ ¼ö ÀÖ´Ù. Äõ¸®°¡ °°Àº °æ¿ì´Â ±×·¯ÇÑ fragmentÀÇ ¼ø¼¿¡ µû¶ó ¼ø¼ ºÙÀÏ ¼ö ÀÖ´Ù
ÀÌ ¸Þ¼µå´Â Comparable.compareTo
¸Þ¼µåÀÇ ¹ü¿ë ±Ô¾àÀ» ä¿ó´Ï´Ù.
Comparable <URI >
³»ÀÇ compareTo
that
- ÀÌ URI¿Í
ºñ±³ÇÏ´Â °´Ã¼
ClassCastException
- ÁöÁ¤µÈ °´Ã¼°¡ URI°¡ ¾Æ´Ñ °æ¿ìpublic String toString()
ÀÌ URI°¡ ÀÌ Å¬·¡½ºÀÇ »ý¼ºÀÚ 1°³¸¦ È£ÃâÇØ ÀÛ¼ºµÇ¾úÀ» °æ¿ì´Â ¿øÀÇ ÀԷ ij¸¯ÅÍ ¶óÀο¡ µ¿ÀÏÇÑ Ä³¸¯ÅÍ ¶óÀÎ, ¶Ç´Â ´çÃÊ·Î ÁöÁ¤µÈ ÄÄÆÛ³ÍÆ®·ÎºÎÅÍ ¿ä±¸ÇÑ Ä³¸¯ÅÍ ¶óÀÎ (ÀûÀýÇÑ °æ¿ì)¿¡ µ¿ÀÏÇÑ Ä³¸¯ÅÍ ¶óÀÎÀÌ ¸®Åϵ˴ϴ٠. ±×·¸Áö ¾ÊÀº °æ¿ì, ÀÌ URI´Â Á¤±ÔÈ, ÇØ°á, ¶Ç´Â »ó´ëÈ¿¡ ÀÇÇØ ÀÛ¼ºµÇ°í ÀÖ½À´Ï´Ù. µû¶ó¼, ij¸¯ÅÍ ¶óÀÎÀº, ¡¸RFC 2396¡¹¼½¼Ç 5. 2, ½ºÅÜ 7 ·Î °¡¸®Å°´Â ±ÔÄ¢¿¡ µû¶ó ÀÌ URI ÄÄÆÛ³ÍÆ®·ÎºÎÅÍ ±¸ÃàµË´Ï´Ù.
Object
³»ÀÇ toString
public String toASCIIString()
ÀÌ URI¿¡ ¡¸±× ¿Ü¡¹ÀÇ Ä«Å×°í¸®ÀÇ ¹®ÀÚ°¡ Æ÷ÇÔµÇÁö ¾ÊÀº °æ¿ì´Â ÀÌ ¸Þ¼µå¸¦ È£ÃâÇϸé toString
¸Þ¼µå¸¦ È£ÃâÇßÀ» ¶§¿Í °°Àº °ªÀÌ ¸®Åϵ˴ϴÙ
. ±×·¸Áö ¾ÊÀº °æ¿ì, ÀÌ ¸Þ¼µå´Â ±× ¸Þ¼µå¸¦ È£ÃâÇØ °á°ú¸¦encode ÇÏ´Â°Í °°ÀÌ µ¿ÀÛÇÕ´Ï´Ù.
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | constructor | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.