JavaTM 2
Platform
Std.  Ed.  v1. 4.0

org.xml.sax
ÀÎÅÍÆäÀ̽º EntityResolver

±âÁ¸ÀÇ ±¸Çö Ŭ·¡½ºÀÇ À϶÷:
DefaultHandler , HandlerBase , XMLFilterImpl

public interface EntityResolver

¿£Æ¼Æ¼¸¦ ÇØ°áÇϱâ À§ÇÑ ±âº» ÀÎÅÍÆäÀ̽ºÀÔ´Ï´Ù.

ÀÌ ¸ðµâÀº ¿ø½Ã ÄÚµå, ¹®¼­ ¸ðµÎ °ø°³ µµ¸ÞÀο¡ ³õ¿©Á® ÀÖ½À´Ï´Ù. µû¶ó¼­, ³»¿ë¿¡ °üÇÑÇÁ·ÎÅØ¼ÇÀº ÀÏÀý Á¦°øµÇÁö ¾Ê½À´Ï´Ù.

¿ÜºÎ ¿£Æ¼Æ¼ÀÇ Ä¿½ºÅÒ Ã³¸®¸¦ ±¸ÇöÇÒ Çʿ䰡 ÀÖ´Â °æ¿ì, SAX ¾îÇø®ÄÉÀ̼ÇÀº ÀÌ ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇØ,setEntityResolver ¸Þ¼Òµå¸¦ »ç¿ëÇØ SAX µå¶óÀ̹ö¿¡ ÀνºÅϽº¸¦ µî·ÏÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

±× ÈÄ, XML ¸®´õ¿¡ ÀÇÇØ, ¾îÇø®ÄÉÀ̼ÇÀº ¿ÜºÎ ¿£Æ¼Æ¼ (¿ÜºÎ DTD ºÎºÐÁýÇÕ, ¿ÜºÎ ÆÄ¶ó¸ÞÀÌŸ¿£Æ¼Æ¼¸¦ Æ÷ÇÔÇÑ´Ù)¸¦ ¼öÁß¿¡ ³Ö±â Àü¿¡ Â÷´ÜÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù.

ÀÌ ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇØ¾ß ÇÏ´Â SAX ¾îÇø®ÄÉÀ̼ÇÀº ±×´ÙÁö ¾ø½À´Ï´Ù. ±×·¯³ª, ÀÌ ÀÎÅÍÆäÀ̽º´Â µ¥ÀÌŸº£À̽º³ª ±× ¿ÜÀÇ Æ¯¼öÇÑ ÀÔ·Â ¼Ò½º·ÎºÎÅÍ XML ¹®¼­¸¦ ±¸ÃàÇÏ´Â °Í °°Àº ¾îÇø®ÄÉÀ̼Ç, ȤÀº URL ÀÌ¿ÜÀÇ URI ÇüÀ» »ç¿ëÇÏ´Â ¾îÇø®ÄÉÀ̼ǿ¡ ÀÖ¾î ¸Å¿ì À¯ÀÍÇÕ´Ï´Ù.

ÀÌÇÏÀÇ resolver´Â ½Ã½ºÅÛ ½Äº°ÀÚ "http://www.myhost.com/today" ¸¦ »ç¿ëÇØ, ¾îÇø®ÄÉÀ̼ǿ¡ ¿£Æ¼Æ¼ÀÇ Æ¯¼ö ij¸¯ÅÍ ½ºÆ®¸²À» Á¦°øÇÕ´Ï´Ù.

 import org.xml.sax.EntityResolver;
 import org.xml.sax.InputSource;

 public class MyResolver implements EntityResolver {
   public InputSource resolveEntity (String publicId, String systemId)
   {
     if (systemId.equals("http://www.myhost.com/today")) {
              // return a special input source
       MyReader reader = new MyReader();
       return new InputSource(reader);
     } else {
              // use the default behaviour
       return null;
     }
   }
 }
 

¾îÇø®ÄÉÀ̼ǵµ ¶Ç, ÀÌ ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇØ ½Ã½ºÅÛ ½Äº°ÀÚ¸¦ ·ÎÄà URI ¿¡ ¸®µð·ºÆ® Çϰųª īŻ·Î±×³»ÀÇ ±³È¯Ä¡¸¦ °Ë»öÇϰųª (Åë»ó, °ø°³ ½Äº°ÀÚ¸¦ »ç¿ë) ÇÒ ¼ö ÀÖ½À´Ï´Ù.

µµÀÔµÈ ¹öÁ¯:
SAX 1.0
°ü·Ã Ç׸ñ:
Parser.setEntityResolver(org.xml.sax.EntityResolver) , InputSource

¸Þ¼ÒµåÀÇ °³¿ä
 InputSource resolveEntity (String  publicId, String  systemId)
          ¾îÇø®ÄÉÀ̼ÇÀÌ ¿ÜºÎ ¿£Æ¼Æ¼¸¦ ÇØ°áÇÒ ¼ö ÀÖ°Ô ÇÕ´Ï´Ù.
 

¸Þ¼ÒµåÀÇ »ó¼¼

resolveEntity

public InputSource  resolveEntity(String  publicId,
                                 String  systemId)
                          throws SAXException ,
                                 IOException 
¾îÇø®ÄÉÀ̼ÇÀÌ ¿ÜºÎ ¿£Æ¼Æ¼¸¦ ÇØ°áÇÒ ¼ö ÀÖ°Ô ÇÕ´Ï´Ù.

ÆÄ¼­´Â Åé ·¹º§ÀÇ ¹®¼­ ¿£Æ¼Æ¼¸¦ Á¦¿ÜÇÑ ¸ðµç ¿ÜºÎ ¿£Æ¼Æ¼ (¿ÜºÎ DTD ºÎºÐÁýÇÕ, DTD ³»¿¡¼­ ÂüÁ¶µÇ´Â ¿ÜºÎ ¿£Æ¼Æ¼, ¹®¼­ ¿ä¼Ò³»¿¡¼­ ÂüÁ¶µÇ´Â ¿ÜºÎ ¿£Æ¼Æ¼¸¦ Æ÷ÇÔÇÑ´Ù)¸¦ ¿­±â Àü¿¡, ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇÕ´Ï´Ù. ¾îÇø®ÄÉÀ̼ÇÀº ÆÄ¼­¿¡ ¿£Æ¼Æ¼ ÀÚüÀÇ ÇØ°á, ´ëü URI ÀÇ »ç¿ë, ¶Ç´Â ¿ÏÀüÈ÷ ´Ù¸¥ ÀÔ·Â ¼Ò½ºÀÇ »ç¿ëÀ» ¿ä±¸ÇÒ ¼ö ÀÖ½À´Ï´Ù.

¾îÇø®ÄÉÀ̼ÇÀÇ ÀÛ¼ºÀÚ´Â ÀÌ ¸Þ¼Òµå¸¦ »ç¿ëÇØ ¿ÜºÎ ½Ã½ºÅÛ ½Äº°ÀÚ¸¦ ¾ÈÀüÇÑ ·ÎÄà URI ¿¡ ¸®µð·ºÆ® Çϰųª īŻ·Î±×³»ÀÇ °ø°³ ½Äº°ÀÚ¸¦ °Ë»öÇϰųª µ¥ÀÌŸº£À̽º³ª ±× ¿ÜÀÇ ÀÔ·Â ¼Ò½º (¿¹¸¦ µé¾î ´ÙÀÌ¾Ë·Î±× ¹Ú½º)·ÎºÎÅÍ ¿£Æ¼Æ¼¸¦ Àо°Å³ª ÇÒ ¼ö ÀÖ½À´Ï´Ù.

½Ã½ºÅÛ ½Äº°ÀÚ°¡ URL ÀÇ °æ¿ì, SAX ÆÄ¼­´Â À̰ÍÀ» ¾îÇø®ÄÉÀ̼ǿ¡ º¸°íÇϱâ Àü¿¡ ¿ÏÀüÇÏ°Ô ÇØ°áÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
publicId - ÂüÁ¶µÇ´Â ¿ÜºÎ ¿£Æ¼Æ¼ÀÇ °ø°³ ½Äº°ÀÚ. Á¦°øµÇÁö ¾Ê¾Ò´ø °æ¿ì´Â null
systemId - ÂüÁ¶µÇ´Â ¿ÜºÎ ¿£Æ¼Æ¼ÀÇ ½Ã½ºÅÛ ½Äº°ÀÚ
¹Ýȯ°ª:
»õ·Î¿î ÀÔ·Â ¼Ò½º¸¦ ±â¼úÇÏ´Â InputSource ¿ÀºêÁ§Æ®. ÆÄ¼­¿¡ ½Ã½ºÅÛ ½Äº°ÀÚ¿¡ÀÇ Á¤±Ô URI Á¢¼ÓÀ» ¿ä±¸ÇÏ´Â °æ¿ì´Â null
¿¹¿Ü:
SAXException - SAX ¿¹¿Ü. ´Ù¸¥ ¿¹¿Ü¸¦ ·¦ Çϰí ÀÖÀ» °¡´É¼ºÀÌ ÀÖ´Ù
IOException - Java °íÀ¯ÀÇ ÀÔÃâ·Â ¿¹¿Ü. Åë»ó, InputSource ÀÇ »õ·Î¿î InputStream ¶Ç´Â Reader °¡ »ý¼ºµÇ¸é(ÀÚ) ¹ß»ýÇÏ´Â
°ü·Ã Ç׸ñ:
InputSource

JavaTM 2
Platform
Std.  Ed.  v1. 4.0

¹ö±×ÀÇ º¸°í¿Í ±â´ÉÀÇ ¸®Äù½ºÆ®
ÀÌ¿ÜÀÇ API ·¹ÆÛ·±½º ¹× °³¹ßÀÚ¿ë ¹®¼­¿¡ ´ëÇØ¼­´Â Java 2 SDK SE °³¹ßÀÚ¿ë ¹®¼­¸¦ ÂüÁ¶ÇØ ÁÖ¼¼¿ä. °³¹ßÀÚÀü¿ëÀÇ »ó¼¼ÇÑ ÇØ¼³, °³³äÀÇ °³¿ä, ¿ë¾îÀÇ Á¤ÀÇ, ¹ö±×ÀÇ È¸ÇÇÃ¥, ¹× ÄÚµå ½Ç·Ê°¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù.

Java, Java 2 D, ¹× JDBC ´Â ¹Ì±¹ ¹× ±× ¿ÜÀÇ ³ª¶ó¿¡ À־ÀÇ ¹Ì±¹ Sun Microsystems, Inc. ÀÇ »óÇ¥ ȤÀº µî·Ï»óÇ¥ÀÔ´Ï´Ù.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.