JavaTM 2
Platform
Std.  Ed.  v1. 4.0

javax.naming.spi
ÀÎÅÍÆäÀ̽º StateFactory

±âÁ¸ÀÇ ¼­ºê ÀÎÅÍÆäÀ̽ºÀÇ À϶÷:
DirStateFactory

public interface StateFactory

ÀÌ ÀÎÅÍÆäÀ̽º´Â ¿ÀºêÁ§Æ®ÀÇ ¹ÙÀεù »óŸ¦ ÃëµæÇÏ´Â ÆÑÅ丮¸¦ ³ªÅ¸³À´Ï´Ù.

JNDI üÁ¦¿¡¼­´Â ¿ÀºêÁ§Æ® ÆÑÅ丮 ¸¦ »ç¿ëÇØ ¿ÀºêÁ§Æ® ±¸ÇöÀ» µ¿ÀûÀ¸·Î ·ÎµåÇÏ´Â °ÍÀÌ °¡´ÉÇÕ´Ï´Ù. ¿¹¸¦ µé¾î À̸§ °ø°£¿¡ ¹ÙÀÎµå µÈ ÇÁ¸°Å͸¦ °Ë»öÇÏ´Â °æ¿ì, Àμ⠼­ºñ½º°¡ ÇÁ¸°Å͸íÀ» Reference ¿¡ ¹ÙÀεå Çϸé(ÀÚ), ÇÁ¸°ÅÍ Reference ¸¦ »ç¿ëÇØ ÇÁ¸°ÅÍ ¿ÀºêÁ§Æ®¸¦ »ý¼ºÇØ, look ¾÷ÀÇ È£ÃâÃøÀÌ look ¾÷ ÈÄ¿¡ Á÷Á¢ ÇÁ¸°ÅÍ ¿ÀºêÁ§Æ®·Î Á¶ÀÛÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù.

ObjectFactory ´Â ƯÁ¤ÀÇ Å¸ÀÔÀÇ ¿ÀºêÁ§Æ® »ý¼ºÀ» ½Ç½ÃÇÕ´Ï´Ù. »ó±âÀÇ ¿¹¿¡¼­´Â Printer ¿ÀºêÁ§Æ®ÀÇ »ý¼º¿¡ PrinterObjectFactory ¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

¿ªÀÇ ÇÁ·Î¼¼½º¿¡¼­´Â ¿ÀºêÁ§Æ®°¡ À̸§ °ø°£¿¡ ¹ÙÀÎµå µÇ°í ÀÖ´Â °æ¿ì, JNDI ´Â state factories ¸¦ Á¦°øÇÕ´Ï´Ù. ¿©±â¿¡¼­µµ ÇÁ¸°Å͸¦ ¿¹¸¦ µé¾î, ÇÁ¸°ÅÍ ¿ÀºêÁ§Æ®°¡ °»½ÅµÇ¾î ÀçÂ÷ ¹ÙÀÎµå µÇ´Â °æ¿ì¸¦ »ý°¢ÇÕ´Ï´Ù.

 ctx.rebind("inky", printer);
 
ctx ÀÇ ¼­ºñ½º ÇÁ·Î¹ÙÀÌ´õ´Â »óÅ ÆÑÅ丮¸¦ »ç¿ëÇØ printer ÀÇ À̸§ °ø°£¿¡ÀÇ ¹ÙÀεù »óŸ¦ ÃëµæÇÕ´Ï´Ù. Printer ŸÀÔ ¿ÀºêÁ§Æ® »óÅ ÆÑÅ丮´Â ³×ÀÌ¹Ö ½Ã½ºÅÛ¿¡¼­ÀÇ ±â¾ïÀ» À§Çؼ­(¶§¹®¿¡), º¸´Ù ÄÄÆÑÆ®ÇÑ ¿ÀºêÁ§Æ®¸¦ µ¹·ÁÁÖ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

»óÅ ÆÑÅ丮´Â StateFactory ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ¶Ç ÆÑÅ丮 Ŭ·¡½º´Â public ÀÎ °ÍÀÌ ÇÊ¿äÇØ, ÇÑÆí ÆÄ¶ó¹ÌÅ͸¦ ÀâÈ÷Áö ¾Ê´Â public constructor¸¦ °¡Áú Çʿ䰡 ÀÖ½À´Ï´Ù.

»óÅ ÆÑÅ丮ÀÇ getStateToBind() ¸Þ¼Òµå´Â ´Ù¸¥ ÆÄ¶ó¹ÌÅ͸¦ »ç¿ëÇØ ¿©·¯ Â÷·Ê ºÒ·Á °¡´Â ÀÏÀÌ ÀÖ½À´Ï´Ù. ±¸ÇöÀº thread ¼¼ÀÌÇÁÀÔ´Ï´Ù.

StateFactory ´Â Context ÀÎÅÍÆäÀ̽º¸¸À» ±¸ÇöÇϰí ÀÖ´Â ¼­ºñ½º ÇÁ·Î¹ÙÀÌ´õ ´ë»óÀÔ´Ï´Ù. DirStateFactory ´Â DirContext ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇϰí ÀÖ´Â ¼­ºñ½º ÇÁ·Î¹ÙÀÌ´õ ´ë»óÀÔ´Ï´Ù.

µµÀÔµÈ ¹öÁ¯:
1.3
°ü·Ã Ç׸ñ:
NamingManager.getStateToBind(java.lang.Object, javax.naming.Name, javax.naming.Context, java.util.Hashtable) , DirectoryManager.getStateToBind(java.lang.Object, javax.naming.Name, javax.naming.Context, java.util.Hashtable, javax.naming.directory.Attributes) , ObjectFactory , DirStateFactory

¸Þ¼ÒµåÀÇ °³¿ä
 Object getStateToBind (Object  obj, Name  name, Context  nameCtx, Hashtable  environment)
          ¿ÀºêÁ§Æ®ÀÇ ¹ÙÀεù »óŸ¦ ÃëµæÇÕ´Ï´Ù.
 

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

getStateToBind

public Object  getStateToBind(Object  obj,
                             Name  name,
                             Context  nameCtx,
                             Hashtable  environment)
                      throws NamingException 
¿ÀºêÁ§Æ®ÀÇ ¹ÙÀεù »óŸ¦ ÃëµæÇÕ´Ï´Ù.

NamingManager.getStateToBind() ´Â »óÅ ÆÑÅ丮¿¡ ¿¬¼ÓÀûÀ¸·Î ·ÎµåÇØ, 1 krÀÌ null ÀÌ¿ÜÀÇ ´ë´äÀ» »ý¼ºÇÒ ¶§±îÁö »óÅ ÆÑÅ丮»ó¿¡¼­ ÀÌ ¸Þ¼Òµå¸¦ °è¼Ó È£ÃâÇÕ´Ï´Ù. DirectoryManager.getStateToBind() ´Â »óÅ ÆÑÅ丮¿¡ ¿¬¼ÓÀûÀ¸·Î ·ÎµåÇÕ´Ï´Ù. ÆÑÅ丮°¡ DirStateFactory ¸¦ ±¸ÇöÇϰí ÀÖÀ¸¸é,DirectoryManager °¡ DirStateFactory.getStateToBind() ¸¦ È£ÃâÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â StateFactory.getStateToBind() ¸¦ È£ÃâÇÕ´Ï´Ù.

ÆÑÅ丮°¡ ¿¹¿Ü¸¦ ½½·Î¿ì Çϸé(ÀÚ), ±× ¿¹¿Ü´Â NamingManager.getStateToBind() ¹× DirectoryManager.getStateToBind() ÀÇ È£Ãâ Ãø¿¡ °Ç³×¹Þ½À´Ï´Ù. null ÀÌ¿ÜÀÇ ´äÀ» »ý¼ºÇÒ °¡´É¼ºÀÌ ÀÖ´Â ´Ù¸¥ ÆÑÅ丮ÀÇ °Ë»öÀº Á¤ÁöÇÕ´Ï´Ù. ÆÑÅ丮´Â ±×°ÍÀÌ ¸ñÀûÀÇ À¯ÀÏÇÑ ÆÑÅ丮ÀÌ¸ç ´Ù¸¥ ÆÑÅ丮¸¦ °Ë»öÇÒ Çʿ䰡 ¾ø´Â °ÍÀÌ È®½ÇÇÑ °æ¿ì¿¡°Ô¸¸, ¿¹¿Ü¸¦ ½½·Î¿ì Çϵµ·Ï(µíÀÌ) ÇÕ´Ï´Ù. ÀÌ ÆÑÅ丮°¡ ÁöÁ¤µÈ Àμö·Î ¿ÀºêÁ§Æ®¸¦ »ý¼ºÇÒ ¼ö ¾ø´Â °æ¿ì´Â null ¸¦ µ¹·ÁÁÝ´Ï´Ù.

name ÆÄ¶ó¹ÌÅÍ ¹× nameCtx ÆÄ¶ó¹ÌÅ͸¦ ÀÓÀÇ¿¡ »ç¿ëÇØ, »ý¼ºÁßÀÇ ¿ÀºêÁ§Æ®ÀÇ À̸§À» ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº ObjectFactory.getObjectInstance() ÀÇ ¡¸À̸§ ÆÄ¶ó¹ÌÅÍ¿Í ¹®¸Æ ÆÄ¶ó¹ÌÅÍ¡¹ÀÇ ¼³¸íÀ» ÂüÁ¶ÇØ ÁÖ¼¼¿ä. ÆÑÅ丮°¡ nameCtx ¸¦ »ç¿ëÇÏ´Â °æ¿ì´Â ±× »ç¿ëÀ» º´Çà ¾×¼¼½º¿Í µ¿±âÈ­Çϵµ·Ï(µíÀÌ) ÇÕ´Ï´Ù. ¹®¸Æ ±¸ÇöÀº thread ¼¼ÀÌÇÁÀÎ °ÍÀÌ ÇÁ·ÎÅØ¼ÇµÇ¾î ÀÖÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù.

name ÆÄ¶ó¹ÌÅÍ ¹× environment ÆÄ¶ó¹ÌÅʹ ȣÃâÃøÀÌ ¼ÒÀ¯ÇÕ´Ï´Ù. ±¸ÇöÀº ÀÌ·¯ÇÑ ¿ÀºêÁ§Æ®¸¦ º¯°æÇÏÁö ¾Ê°í ±× ¿ÀºêÁ§Æ®¿¡ ´ëÇÑ ÂüÁ¶µµ º¸°ü À¯ÁöÇÕ´Ï´Ù¸¸, º¹Á¦ ¶Ç´Â Ä«ÇÇ¿¡ ´ëÇÑ ÂüÁ¶¸¦ º¸°ü À¯ÁöÇÏ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
obj - »óŸ¦ ÃëµæÇÏ´Â null ÀÌ¿ÜÀÇ ¿ÀºêÁ§Æ®
name - nameCtx ¿¡ °ü·ÃÇÏ´Â ÀÌ ¿ÀºêÁ§Æ®ÀÇ À̸§, ¶Ç´Â À̸§ÀÌ ÁöÁ¤µÇÁö ¾Ê´Â °æ¿ì´Â null
nameCtx - name ÆÄ¶ó¹ÌÅÍÀÇ ÁöÁ¤¿¡ °ü·ÃÇÏ´Â ¹®¸Æ, ¶Ç´Â name °¡ µðÆúÆ®ÀÇ Ãʱ⠹®¸Æ¿¡ °ü·ÃÇÏ´Â °æ¿ì´Â null
environment - null ÀÇ °¡´É¼ºÀÌ ÀÖ´Â ¿ÀºêÁ§Æ® »óÅÂÀÇ »ý¼º¿¡ »ç¿ëµÇ´Â ȯ°æ
¹Ýȯ°ª:
¿ÀºêÁ§Æ®ÀÇ ¹ÙÀεù »óÅÂ. ÆÑÅ丮°¡ ¾Æ¹«°Íµµ º¯°æÀ» µ¹·ÁÁÖÁö ¾Ê´Â °æ¿ì´Â null
¿¹¿Ü:
NamingException - ¿ÀºêÁ§Æ® »óŸ¦ ÃëµæÇÏ·Á°í Çϰí ÀÖÀ» ¶§ ÀÌ ÆÑÅ丮°¡ ¿¹¿Ü¸¦ °ËÃâÇØ, ´Ù¸¥ ÆÑÅ丮°¡ ½ÃÇàµÇÁö ¾Ê´Â °æ¿ì
°ü·Ã Ç׸ñ:
NamingManager.getStateToBind(java.lang.Object, javax.naming.Name, javax.naming.Context, java.util.Hashtable) , DirectoryManager.getStateToBind(java.lang.Object, javax.naming.Name, javax.naming.Context, java.util.Hashtable, javax.naming.directory.Attributes)

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.