JavaTM 2 Platform
Standard Ed. 5.0

java.rmi.server
Ŭ·¡½º RMIClassLoader

java.lang.Object 
  »óÀ§¸¦ È®Àå java.rmi.server.RMIClassLoader

public class RMIClassLoader
extends Object

RMIClassLoader´Â RMI¸¦ »ç¿ëÇØ µ¿ÀûÀ¸·Î Ŭ·¡½º¸¦ ·ÎµåÇϱâ À§ÇÑ static ¸Þ¼­µå·ÎºÎÅÍ ±¸¼ºµË´Ï´Ù. ÀÌ Å¬·¡½º ·Î´õ¿¡°Ô´Â ³×Æ®¿öÅ©ÀÇ Àå¼Ò (1 °³ ÀÌ»óÀÇ URL)¿¡¼­ Ŭ·¡½º¸¦ ·ÎµåÇÏ´Â ¸Þ¼­µå³ª, ±âÁ¸ÀÇ Å¬·¡½º°¡ Æ÷ÇԵǰí ÀÖ´Â Àå¼Ò¸¦ ¾ò´Â ¸Þ¼­µå°¡ »ðÀԵǾî ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ ¸Þ¼­µå´Â ¸®¸ðÆ® ¸Þ¼­µå È£ÃâÀÇ Àμö³ª ¹Ýȯ°ª¿¡ Æ÷ÇԵǴ Ŭ·¡½º¸¦ Á¤·ÄÈ­ ¹× ºñÁ¤·ÄÈ­ÇÒ ¶§, RMI ·±Å¸ÀÓ¿¡ ÇØ »ç¿ëµË´Ï´Ù. ¶Ç, ÀÌ·¯ÇÑ ¸Þ¼­µå¸¦ ¾îÇø®ÄÉÀ̼ÇÀ¸·ÎºÎÅÍ Á÷Á¢ È£ÃâÇØ, Ŭ·¡½º¸¦ µ¿ÀûÀ¸·Î ·ÎµåÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

´ÙÀ½ÀÇ static ¸Þ¼­µåÀÇ ±¸ÇöÀº, ¼­ºñ½º ÇÁ·Î¹ÙÀÌ´õ ÀÎÅÍÆäÀ̽º RMIClassLoaderSpi ÀνºÅϽº¿¡ ÇØ Á¦°øµË´Ï´Ù.

ÀÌ ¸Þ¼­µåÁß ÇÑÂÊÀÌ ºÒ·Á °¡¸é, ±× µ¿ÀÛÀÌ ¼­ºñ½º ÇÁ·Î¹ÙÀÌ´õ ÀνºÅϽºÀÇ ´ëÀÀÇÏ´Â ¸Þ¼­µå¿¡ À§¾ç µË´Ï´Ù. °¢ ¸Þ¼­µå°¡ ÇÁ·Î¹ÙÀÌ´õ ÀνºÅϽº¿¡ À§¾ç ÇÏ´Â µ¿ÀÛÀÇ ÀÚ¼¼ÇÑ °ÍÀº, °¢ ¸Þ¼­µåÀÇ ¸Þ´º¾óÀ» ÂüÁ¶ÇϽʽÿÀ.

¼­ºñ½º ÇÁ·Î¹ÙÀÌ´õ ÀνºÅϽº´Â ´ÙÀ½°ú °°ÀÌ ¼±Åõ˴ϴÙ.

µµÀÔµÈ ¹öÁ¯:
JDK1. 1
°ü·Ã Ç׸ñ:
RMIClassLoaderSpi

¸Þ¼­µå °³¿ä
static String getClassAnnotation (Class <? > cl)
          Å¬·¡½º Á¤ÀÇÀÇ À§Ä¡¸¦ ³ªÅ¸³»´Â ÁÖ¼® ij¸¯ÅÍ ¶óÀÎÀ» µ¹·ÁÁÝ´Ï´Ù.
static ClassLoader getClassLoader (String  codebase)
          ÁöÁ¤µÈ ÄÚµå º£À̽º URL ÆÐ½º·ÎºÎÅÍ Å¬·¡½º¸¦ ·ÎµåÇϴ Ŭ·¡½º ·Î´õ¸¦ µ¹·ÁÁÝ´Ï´Ù.
static RMIClassLoaderSpi getDefaultProviderInstance ()
          ¼­ºñ½º ÇÁ·Î¹ÙÀÌ´õ ÀÎÅÍÆäÀ̽º RMIClassLoaderSpi µðÆúÆ® ÇÁ·Î¹ÙÀÌ´õÀÇ Ç¥ÁØ ÀνºÅϽº¸¦ µ¹·ÁÁÝ´Ï´Ù.
static Object getSecurityContext (ClassLoader  loader)
          ÃßõÇÏÁö ¾Ê½À´Ï´Ù .  ´ëü´Â ¾ø½À´Ï´Ù. Java 2 Ç÷§Æû 1.2 ÀÌÈÄÀÇ RMI ¿¡¼­´Â Ŭ·¡½º ·Î´õÀÇ ½ÃÅ¥·¯Æ¼ ÄÁÅØ½ºÆ® À» ÃëµæÇϱâ À§Çؼ­ ÀÌ ¸Þ¼­µå¸¦ »ç¿ëÇÏÁö ¾Ê½À´Ï´Ù.
static Class <? > loadClass (String  name)
          ÃßõÇÏÁö ¾Ê½À´Ï´Ù .  loadClass(String, String) ¸Þ¼­µå·Î ¿Å°ÜÁ³½À´Ï´Ù.
static Class <? > loadClass (String  codebase, String  name)
          ÁöÁ¤µÈ ÄÚµå º£À̽º URL ÆÐ½º·ÎºÎÅÍ Å¬·¡½º¸¦ ·ÎµåÇÕ´Ï´Ù.
static Class <? > loadClass (String  codebase, String  name, ClassLoader  defaultLoader)
          ÁöÁ¤µÈ ÄÚµå º£À̽º URL ÆÐ½º·ÎºÎÅÍ Å¬·¡½º¸¦ ·ÎµåÇÕ´Ï´Ù.
static Class <? > loadClass (URL  codebase, String  name)
          ÁöÁ¤µÈ ÄÚµå º£À̽º URL ·ÎºÎÅÍ Å¬·¡½º¸¦ ·ÎµåÇÕ´Ï´Ù.
static Class <? > loadProxyClass (String  codebase, String [] interfaces, ClassLoader  defaultLoader)
          ÁöÁ¤µÈ À̸§À» °¡Áö´Â ÀÎÅÍÆäÀ̽º±ºÀ» ±¸ÇöÇÑ µ¿Àû ÇÁ·Ï½Ã Ŭ·¡½º (Proxy ¸¦ ÂüÁ¶)¸¦, ÁöÁ¤µÈ ÄÚµå º£À̽º URL ÆÐ½º·ÎºÎÅÍ ·ÎµåÇÕ´Ï´Ù.
 
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼­µå
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

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

loadClass

@Deprecated 
public static Class <? > loadClass(String  name)
                          throws MalformedURLException,

                                 ClassNotFoundException 
ÃßõÇÏÁö ¾Ê½À´Ï´Ù .  loadClass(String, String) ¸Þ¼­µå·Î ¿Å°ÜÁ³½À´Ï´Ù.

ÁöÁ¤µÈ name¸¦ À̸§¿¡ °¡Áö´Â Ŭ·¡½º¸¦ ·ÎµåÇÕ´Ï´Ù.

ÀÌ ¸Þ¼­µå´Â 󸮸¦ loadClass(String, String) ¸Þ¼­µå¿¡ À§¾ç ÇÕ´Ï´Ù. 1 ¹øÂ°ÀÇ Àμö¿¡´Â null °¡, 2 ¹øÂ°ÀÇ Àμö¿¡´Â name °¡ °Ç³×¹Þ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
name - ·Îµå ´ë»ó Ŭ·¡½ºÀÇ À̸§
¹Ýȯ°ª:
·Îµå µÈ Ŭ·¡½º¸¦ ³ªÅ¸³»´Â Class ¿ÀºêÁ§Æ®
¿¹¿Ü:
MalformedURLException - Ŭ·¡½º ·Îµå½Ã¿¡ »ç¿ëµÈ ÇÁ·Î¹ÙÀÌ´õ °íÀ¯ URL °¡ ¹«È¿ÀÎ °æ¿ì
ClassNotFoundException - Ŭ·¡½ºÀÇ Á¤Àǰ¡ ÄÚµå º£À̽ºÀÇ À§Ä¡¿¡ ¾ø¾ú´ø °æ¿ì
°ü·Ã Ç׸ñ:
loadClass(String, String)

loadClass

public static Class <? > loadClass(URL  codebase,
                                 String  name)
                          throws MalformedURLException,

                                 ClassNotFoundException 
ÁöÁ¤µÈ ÄÚµå º£À̽º URL ·ÎºÎÅÍ Å¬·¡½º¸¦ ·ÎµåÇÕ´Ï´Ù. codebase °¡ null ÀÎ °æ¿ì, ÀÌ ¸Þ¼­µåÀÇ µ¿ÀÛÀº, ¸Þ¼­µå loadClass(String, String) Àμö¿¡ null codebase ¿Í µ¿ÀÏ Å¬·¡½º¸íÀ» ÁöÁ¤ÇßÀ» °æ¿ì¿Í °°°Ô µË´Ï´Ù.

ÀÌ ¸Þ¼­µå´Â ÇÁ·Î¹ÙÀÌ´õ ÀνºÅϽºÀÇ RMIClassLoaderSpi.loadClass(String, String, ClassLoader) ¸Þ¼­µå¿¡ 󸮸¦ À§¾ç ÇÕ´Ï´Ù. ÀÌ ¶§, ÁöÁ¤ÇÑ URL ·Î URL.toString() ¸¦ È£ÃâÇÑ °á°ú (codebase °¡ null °æ¿ì´Â null)°¡ ÃÖÃÊÀÇ Àμö·Î¼­name °¡ 2 ¹øÂ°ÀÇ Àμö·Î¼­null °¡ 3 ¹øÂ°ÀÇ Àμö·Î¼­ °Ç³×¹Þ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
codebase - Ŭ·¡½ºÀÇ ·Îµå¿øÀÇ URL, ¶Ç´Â null
name - ·Îµå ´ë»ó Ŭ·¡½ºÀÇ À̸§
¹Ýȯ°ª:
·Îµå µÈ Ŭ·¡½º¸¦ ³ªÅ¸³»´Â Class ¿ÀºêÁ§Æ®
¿¹¿Ü:
MalformedURLException - codebase °¡ null ·Î ÇÑÆí Ŭ·¡½º ·Îµå½Ã¿¡ »ç¿ëµÈ ÇÁ·Î¹ÙÀÌ´õ °íÀ¯ URL °¡ ¹«È¿ÀÎ °æ¿ì
ClassNotFoundException - Ŭ·¡½ºÀÇ Á¤Àǰ¡ ÁöÁ¤µÈ URL ¿¡ ¾ø¾ú´ø °æ¿ì

loadClass

public static Class <? > loadClass(String  codebase,
                                 String  name)
                          throws MalformedURLException,

                                 ClassNotFoundException 
ÁöÁ¤µÈ ÄÚµå º£À̽º URL ÆÐ½º·ÎºÎÅÍ Å¬·¡½º¸¦ ·ÎµåÇÕ´Ï´Ù.

ÀÌ ¸Þ¼­µå´Â ÇÁ·Î¹ÙÀÌ´õ ÀνºÅϽºÀÇ RMIClassLoaderSpi.loadClass(String, String, ClassLoader) ¸Þ¼­µå¿¡ 󸮸¦ À§¾ç ÇÕ´Ï´Ù. ÀÌ ¶§,codebase °¡ ÃÖÃÊÀÇ Àμö·Î¼­name °¡ 2 ¹øÂ°ÀÇ Àμö·Î¼­null °¡ 3 ¹øÂ°ÀÇ Àμö·Î¼­ °Ç³×¹Þ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
codebase - Ŭ·¡½ºÀÇ ·Îµå¿øÀÇ URL ¸®½ºÆ® (´Ü¶ô ¹®ÀÚ´Â ½ºÆäÀ̽º), ¶Ç´Â null
name - ·Îµå ´ë»ó Ŭ·¡½ºÀÇ À̸§
¹Ýȯ°ª:
·Îµå µÈ Ŭ·¡½º¸¦ ³ªÅ¸³»´Â Class ¿ÀºêÁ§Æ®
¿¹¿Ü:
MalformedURLException - codebase °¡ null Àܷ̿ΠÇÑÆí ¹«È¿ÀÎ URL¸¦ Æ÷ÇÔÇϰí ÀÖ´Â °æ¿ì, ¶Ç´Â codebase °¡ null ·Î ÇÑÆí Ŭ·¡½º ·Îµå½Ã¿¡ »ç¿ëµÈ ÇÁ·Î¹ÙÀÌ´õ °íÀ¯ URL °¡ ¹«È¿ÀÎ °æ¿ì
ClassNotFoundException - Ŭ·¡½ºÀÇ Á¤Àǰ¡ ÁöÁ¤µÈ Àå¼Ò¿¡ ¾ø¾ú´ø °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.2

loadClass

public static Class <? > loadClass(String  codebase,
                                 String  name,
                                 ClassLoader  defaultLoader)
                          throws MalformedURLException,

                                 ClassNotFoundException 
ÁöÁ¤µÈ ÄÚµå º£À̽º URL ÆÐ½º·ÎºÎÅÍ Å¬·¡½º¸¦ ·ÎµåÇÕ´Ï´Ù. ÁöÁ¤µÈ ·Î´õ¸¦ »ç¿ëÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ÇÁ·Î¹ÙÀÌ´õ ±¸ÇöÀÇ È£Ãâ¿øÀÌ, »óȲ¿¡ µû¶ó »ç¿ëÇØ¾ß ÇÒ Ãß°¡ Ŭ·¡½º ·Î´õ (È£Ãâ¿øÀÇ ½ºÅûóÀÇ ·Î´õµî)¸¦ ÇÁ·Î¹ÙÀÌ´õ ±¸Çö¿¡ Á¦°øÇÏ´Â °æ¿ì¿¡ ÀÌ ¸Þ¼­µå¸¦ »ç¿ëÇÕ´Ï´Ù. º¸Åë , ÇÁ·Î¹ÙÀÌ´õ ±¸ÇöÀº ÁöÁ¤µÈ defaultLoader¸¦ »ç¿ëÇØ ÁöÁ¤µÈ Ŭ·¡½ºÀÇ ÇØ°áÀ» ½ÃµµÇÏ°í ³ª¼­, ÄÚµå º£À̽º URL ÆÐ½º·ÎºÎÅÍÀÇ Å¬·¡½ºÀÇ ÇØ°áÀ» ½ÃµµÇÕ´Ï´Ù.

ÀÌ ¸Þ¼­µå´Â ÇÁ·Î¹ÙÀÌ´õ ÀνºÅϽºÀÇ RMIClassLoaderSpi.loadClass(String, String, ClassLoader) ¸Þ¼­µå¿¡ 󸮸¦ À§¾ç ÇÕ´Ï´Ù. ÀÌ ¶§,codebase °¡ ÃÖÃÊÀÇ Àμö·Î¼­name °¡ 2 ¹øÂ°ÀÇ Àμö·Î¼­defaultLoader °¡ 3 ¹øÂ°ÀÇ Àμö·Î¼­ °Ç³×¹Þ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
codebase - Ŭ·¡½ºÀÇ ·Îµå¿øÀÇ URL ¸®½ºÆ® (´Ü¶ô ¹®ÀÚ´Â ½ºÆäÀ̽º), ¶Ç´Â null
name - ·Îµå ´ë»ó Ŭ·¡½ºÀÇ À̸§
defaultLoader - »óȲ¿¡ µû¶ó »ç¿ëÇÏ´Â Ãß°¡ Ŭ·¡½º ·Î´õ, ¶Ç´Â null
¹Ýȯ°ª:
·Îµå µÈ Ŭ·¡½º¸¦ ³ªÅ¸³»´Â Class ¿ÀºêÁ§Æ®
¿¹¿Ü:
MalformedURLException - codebase °¡ null Àܷ̿ΠÇÑÆí ¹«È¿ÀÎ URL¸¦ Æ÷ÇÔÇϰí ÀÖ´Â °æ¿ì, ¶Ç´Â codebase °¡ null ·Î ÇÑÆí Ŭ·¡½º ·Îµå½Ã¿¡ »ç¿ëµÈ ÇÁ·Î¹ÙÀÌ´õ °íÀ¯ URL °¡ ¹«È¿ÀÎ °æ¿ì
ClassNotFoundException - Ŭ·¡½ºÀÇ Á¤Àǰ¡ ÁöÁ¤µÈ Àå¼Ò¿¡ ¾ø¾ú´ø °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.4

loadProxyClass

public static Class <? > loadProxyClass(String  codebase,
                                      String [] interfaces,
                                      ClassLoader  defaultLoader)
                               throws ClassNotFoundException,

                                      MalformedURLException 
ÁöÁ¤µÈ À̸§À» °¡Áö´Â ÀÎÅÍÆäÀ̽º±ºÀ» ±¸ÇöÇÑ µ¿Àû ÇÁ·Ï½Ã Ŭ·¡½º (Proxy ¸¦ ÂüÁ¶)¸¦, ÁöÁ¤µÈ ÄÚµå º£À̽º URL ÆÐ½º·ÎºÎÅÍ ·ÎµåÇÕ´Ï´Ù.

ÀÌ·¯ÇÑ ÀÎÅÍÆäÀ̽ºÀÇ ÇØ°áÀº, ÁöÁ¤µÈ codebase¸¦ »ç¿ëÇØ loadClass(String, String) ¸Þ¼­µå °æÀ¯·Î ·Îµå µÈ Ŭ·¡½º¿Í °°Àº ¹æ¹ýÀ¸·Î ÇàÇØÁý´Ï´Ù.

ÀÌ ¸Þ¼­µå´Â ÇÁ·Î¹ÙÀÌ´õ ÀνºÅϽºÀÇ RMIClassLoaderSpi.loadProxyClass(String, String[], ClassLoader) ¸Þ¼­µå¿¡ 󸮸¦ À§¾ç ÇÕ´Ï´Ù. ÀÌ ¶§,codebase °¡ ÃÖÃÊÀÇ Àμö·Î¼­interfaces °¡ 2 ¹øÂ°ÀÇ Àμö·Î¼­defaultLoader °¡ 3 ¹øÂ°ÀÇ Àμö·Î¼­ °Ç³×¹Þ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
codebase - Ŭ·¡½ºÀÇ ·Îµå¿øÀÇ URL ¸®½ºÆ® (´Ü¶ô ¹®ÀÚ´Â ½ºÆäÀ̽º), ¶Ç´Â null
interfaces - ÇÁ·Ï½Ã Ŭ·¡½º°¡ ±¸ÇöÇÏ´Â ÀÎÅÍÆäÀ̽ºÀÇ À̸§
defaultLoader - »óȲ¿¡ µû¶ó »ç¿ëÇÏ´Â Ãß°¡ Ŭ·¡½º ·Î´õ, ¶Ç´Â null
¹Ýȯ°ª:
ÁöÁ¤µÈ ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÏ´Â µ¿Àû ÇÁ·Ï½Ã Ŭ·¡½º
¿¹¿Ü:
MalformedURLException - codebase °¡ null Àܷ̿ΠÇÑÆí ¹«È¿ÀÎ URL¸¦ Æ÷ÇÔÇϰí ÀÖ´Â °æ¿ì, ¶Ç´Â codebase °¡ null ·Î ÇÑÆí Ŭ·¡½º ·Îµå½Ã¿¡ »ç¿ëµÈ ÇÁ·Î¹ÙÀÌ´õ °íÀ¯ URL °¡ ¹«È¿ÀÎ °æ¿ì
ClassNotFoundException - ÁöÁ¤µÈ ÀÎÅÍÆäÀ̽ºÀÇ Á¤ÀÇÁß ÇÑÂÊÀÌ ÁöÁ¤µÈ Àå¼Ò¿¡ ¹ß°ßµÇÁö ¾Ê´Â °æ¿ì, ¶Ç´Â µ¿Àû ÇÁ·Ï½Ã Ŭ·¡½ºÀÇ ÀÛ¼º¿¡ ½ÇÆÐÇßÀ» °æ¿ì (Proxy.getProxyClass(ClassLoader, Class[]) °¡, ÁöÁ¤µÈ ÀÎÅÍÆäÀ̽º ¸®½ºÆ®¿¡ ´ëÇØ¼­ IllegalArgumentException¸¦ Throw ÇßÀ» ¶§ µî)
µµÀÔµÈ ¹öÁ¯:
1.4

getClassLoader

public static ClassLoader  getClassLoader(String  codebase)
                                  throws MalformedURLException,

                                         SecurityException 
ÁöÁ¤µÈ ÄÚµå º£À̽º URL ÆÐ½º·ÎºÎÅÍ Å¬·¡½º¸¦ ·ÎµåÇϴ Ŭ·¡½º ·Î´õ¸¦ µ¹·ÁÁÝ´Ï´Ù.

µ¹·ÁÁÖ°íÁö´Â Ŭ·¡½º ·Î´õ´Â loadClass(String, String) ¸Þ¼­µå°¡ °°Àº codebase Àμö¸¦ ÁöÁ¤ÇØ Å¬·¡½º¸¦ ·ÎµåÇÒ ¶§ »ç¿ëÇϴ Ŭ·¡½º ·Î´õ¿Í °°½À´Ï´Ù.

ÀÌ ¸Þ¼­µå´Â ÇÁ·Î¹ÙÀÌ´õ ÀνºÅϽºÀÇ RMIClassLoaderSpi.getClassLoader(String) ¸Þ¼­µå¿¡ 󸮸¦ À§¾ç ÇÕ´Ï´Ù. ÀÌ ¶§,codebase °¡ Àμö·Î¼­ °Ç³×¹Þ½À´Ï´Ù.

½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì´Â RuntimePermission("getClassLoader") ¾×¼¼½º±ÇÀ» »ç¿ëÇØ checkPermission ¸Þ¼­µå°¡ ºÒ·Á °¡SecurityException °¡ üũµË´Ï´Ù. ÀÌ ¸Þ¼­µåÀÇ ÇÁ·Î¹ÙÀÌ´õ ±¸ÇöÀº, È£ÃâÃø ÄÁÅØ½ºÆ® ÀÌ ÄÚµå º£À̽º URL ÆÐ½º³»ÀÇ ¸ðµç URL ¿¡ ´ëÇÑ ¾×¼¼½º±ÇÀ» °¡Áö°í ÀÖÀ»Áö ¾î¶³Áö¿¡ ÀÓÇØ¼­, ½ÃÅ¥·¯Æ¼ üũ¸¦ ½Ç½ÃÇÏ´Â Àϵµ ÀÖ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
codebase - µ¹·ÁÁÖ°íÁö´Â Ŭ·¡½º ·Î´õ°¡ ·ÎµåÇϴ Ŭ·¡½º°¡ Æ÷ÇԵǰí ÀÖ´Â URL ¸®½ºÆ® (´Ü¶ô ¹®ÀÚ´Â ½ºÆäÀ̽º), ¶Ç´Â null
¹Ýȯ°ª:
ÁöÁ¤µÈ ÄÚµå º£À̽º URL ÆÐ½º·ÎºÎÅÍ Å¬·¡½º¸¦ ·ÎµåÇϴ Ŭ·¡½º ·Î´õ
¿¹¿Ü:
MalformedURLException - codebase °¡ null Àܷ̿ΠÇÑÆí ¹«È¿ÀÎ URL¸¦ Æ÷ÇÔÇϰí ÀÖ´Â °æ¿ì, ¶Ç´Â codebase °¡ null ·Î ÇÑÆí Ŭ·¡½º ·Î´õÀÇ ½Äº°½Ã¿¡ »ç¿ëµÈ ÇÁ·Î¹ÙÀÌ´õ °íÀ¯ URL °¡ ¹«È¿ÀÎ °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÒ °æ¿ì¿¡ ±× checkPermission ¸Þ¼­µå°¡ ½ÇÆÐÇßÀ» °æ¿ì. ¶Ç´Â È£ÃâÃøÀÌ ÄÚµå º£À̽º URL ÆÐ½º³»ÀÇ ¸ðµç URL ¿¡ ´ëÇÑ ¾×¼¼½º±ÇÀ» °¡Áö°í ÀÖÁö ¾ÊÀº °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.3

getClassAnnotation

public static String  getClassAnnotation(Class <? > cl)
Ŭ·¡½º Á¤ÀÇÀÇ À§Ä¡¸¦ ³ªÅ¸³»´Â ÁÖ¼® ij¸¯ÅÍ ¶óÀÎÀ» µ¹·ÁÁÝ´Ï´Ù. RMI´Â À̰ÍÀ» »ç¿ëÇØ, ÁöÁ¤µÈ Ŭ·¡½ºÀÇ ¿ÀºêÁ§Æ®ÀÇ Á¤·ÄÈ­¸¦ ½Ç½ÃÇÒ ¶§¿¡ Ŭ·¡½º ±â¼úÀÚ¿¡°Ô ÁÖ¼®À» ´õÇÕ´Ï´Ù.

ÀÌ ¸Þ¼­µå´Â ÇÁ·Î¹ÙÀÌ´õ ÀνºÅϽºÀÇ RMIClassLoaderSpi.getClassAnnotation(Class) ¸Þ¼­µå¿¡ 󸮸¦ À§¾ç ÇÕ´Ï´Ù. ÀÌ ¶§,cl °¡ Àμö·Î¼­ °Ç³×¹Þ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
cl - ÁÖ¼®À» ¾ò´Â ´ë»óÀÇ Å¬·¡½º
¹Ýȯ°ª:
Á¤·ÄÈ­½Ã·Î ÁöÁ¤µÈ Ŭ·¡½º¿¡ ÁÖ¼®À» ´õÇϱâ À§Çؼ­ »ç¿ëµÇ´Â ij¸¯ÅÍ ¶óÀÎ, ¶Ç´Â null
¿¹¿Ü:
NullPointerException - cl °¡ null °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.2

getDefaultProviderInstance

public static RMIClassLoaderSpi  getDefaultProviderInstance()
¼­ºñ½º ÇÁ·Î¹ÙÀÌ´õ ÀÎÅÍÆäÀ̽º RMIClassLoaderSpi µðÆúÆ® ÇÁ·Î¹ÙÀÌ´õÀÇ Ç¥ÁØ ÀνºÅϽº¸¦ µ¹·ÁÁÝ´Ï´Ù. ½Ã½ºÅÛ ÇÁ·ÎÆÛƼ java.rmi.server.RMIClassLoaderSpi °¡ Á¤ÀǵǾî ÀÖÁö ¾ÊÀº °æ¿ì, ´ÙÀ½¿¡ ³ªÅ¸³»´Â RMIClassLoader static ¸Þ¼­µå´Â ¼­ºñ½º ÇÁ·Î¹ÙÀÌ´õ ÀνºÅϽº·Î¼­ µðÆúÆ® ÇÁ·Î¹ÙÀÌ´õÀÇ Ç¥ÁØ ÀνºÅϽº¸¦ »ç¿ëÇÕ´Ï´Ù.

½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì,RuntimePermission("setFactory") ¾×¼¼½º±ÇÀ» »ç¿ëÇØ checkPermission ¸Þ¼­µå°¡ ºÒ·Á °¡SecurityException °¡ üũµË´Ï´Ù.

µðÆúÆ®ÀÇ ¼­ºñ½º ÇÁ·Î¹ÙÀÌ´õ ÀνºÅϽº´Â RMIClassLoaderSpi ¸¦ ´ÙÀ½°ú °°ÀÌ ±¸ÇöÇÕ´Ï´Ù.

getClassAnnotation ¸Þ¼­µå´Â ÁöÁ¤µÈ Ŭ·¡½º Á¤ÀÇÀÇ ´Ù¿î·Îµå¿¡ ¸®¸ðÆ®ÃøÀÌ »ç¿ëÇÏ´Â ÄÚµå º£À̽º URL ÆÐ½º¸¦ ³ªÅ¸³»´Â String¸¦ µ¹·ÁÁÝ´Ï´Ù. µ¹·ÁÁÖ°íÁö´Â ij¸¯ÅÍ ¶óÀÎÀÇ Çü½ÄÀº, ½ºÆäÀ̽º¿¡¼­ ´Ü¶ôÁö¾îÁø URL ÆÐ½ºÀÔ´Ï´Ù. µ¹·ÁÁÖ°íÁö´Â ÄÚµå º£À̽ºÀÇ Ä³¸¯ÅÍ ¶óÀÎÀº, ´ÙÀ½¿¡ ³ªÅ¸³»µµ·Ï(µíÀÌ), ÁöÁ¤µÈ Ŭ·¡½º¿¡ Á¤Àǵǰí Àִ Ŭ·¡½º ·Î´õ¿¡ µû¶ó¼­ ´Ù¸¨´Ï´Ù.

  • Á¤Àǵǰí Àִ Ŭ·¡½º ·Î´õ°¡ ½Ã½ºÅÛ Å¬·¡½º ·Î´õ (ClassLoader.getSystemClassLoader() ¸¦ ÂüÁ¶), ½Ã½ºÅÛ Å¬·¡½º ·Î´õÀÇ ºÎ¸ð (ÀνºÅç ³¡³­ È®Àå Ŭ·¡½º¿¡ »ç¿ëµÇ´Â ·Î´õ µî), ¶Ç´Â bootstrap Ŭ·¡½º ·Î´õ (null ·Î ³ªÅ¸³»Áø´Ù)ÀÇ °æ¿ì,java.rmi.server.codebase ÇÁ·ÎÆÛƼÀÇ °ª (¶Ç´Â ÀÌÀü¿¡ ij½¬µÈ °ª)ÀÌ µ¹·ÁÁÖ°íÁø´Ù. ÀÌ ÇÁ·ÎÆÛƼÀÇ °ªÀÌ ¼³Á¤µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â null °¡ µ¹·ÁÁÖ°íÁø´Ù

  • Á¤Àǵǰí Àִ Ŭ·¡½º ·Î´õ°¡ URLClassLoader ÀνºÅϽºÀÇ °æ¿ì´Â ·Î´õÀÇ getURLs ¸Þ¼­µå È£Ãâ·ÎºÎÅÍ µ¹·ÁÁÖ°íÁö´Â ¿ÜºÎ Çü½ÄÀÇ URL ¸®½ºÆ® (´Ü¶ô ¹®ÀÚ´Â ½ºÆäÀ̽º)°¡ µ¹·ÁÁÖ°íÁø´Ù. URLClassLoader °¡ ÀÌ ÇÁ·Î¹ÙÀÌ´õ¿¡ ÇØ ÀÛ¼ºµÇ¾î ±× loadClass ¶Ç´Â loadProxyClass ¸Þ¼­µå°¡ »ç¿ëµÇ´Â °æ¿ì, °ü·ÃµÈ ÄÚµå º£À̽º ij¸¯ÅÍ ¶óÀÎÀ» ÃëµæÇϱâ À§ÇÑ ¾×¼¼½º±ÇÀº ÇÊ¿ä¾ø´Ù. URLClassLoader ÀνºÅϽº°¡ ÀÌ ÇÁ·Î¹ÙÀÌ´õ À̿ܿ¡ ÀÛ¼ºµÇ¾î ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì´Â getURLs ¸Þ¼­µå·ÎºÎÅÍ URL °¡ µ¹·ÁÁÖ°íÁú ¶§¸¶´Ù,openConnection(). getPermission() È£Ãâ¿¡ ÇØ µ¹·ÁÁÖ°íÁø ¾×¼¼½º±ÇÀ» »ç¿ëÇØ ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkPermission ¸Þ¼­µå°¡ ºÒ·Á °£´Ù. ÀÌ·¯ÇÑ È£ÃâÀÇ ¾î´ÀÂÊÀ̵çÀ¸·Î SecurityException ¶Ç´Â IOException °¡ Throw µÇ¾úÀ» °æ¿ì,java.rmi.server.codebase ÇÁ·ÎÆÛƼÀÇ °ªÀÌ µ¹·ÁÁÖ°íÁø´Ù. ÀÌ ÇÁ·ÎÆÛƼ°¡ ¼³Á¤µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â null °¡ µ¹·ÁÁÖ°íÁø´Ù

  • Á¤Àǵǰí Àִ Ŭ·¡½º ·Î´õ°¡ URLClassLoader ÀνºÅϽº°¡ ¾Æ´Ñ °æ¿ì,java.rmi.server.codebase ÇÁ·ÎÆÛƼÀÇ °ª (¶Ç´Â ÀÌÀü¿¡ ij½¬µÈ °ª)ÀÌ µ¹·ÁÁÖ°íÁø´Ù. ÀÌ ÇÁ·ÎÆÛƼ°¡ ¼³Á¤µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â null °¡ µ¹·ÁÁÖ°íÁø´Ù

codebase ¶ó´Â À̸§ÀÇ String ÆÄ¶ó¹ÌÅÍ (½ºÆäÀ̽º¿¡¼­ ´Ü¶ôÁö¾îÁø URL ¸®½ºÆ®)¸¦ ÃëÇÏ´Â ´ÙÀ½¿¡ ¼³¸íÇÏ´Â °¢ ¸Þ¼­µå ±¸Çö¿¡ ´ëÇØ, ¸Þ¼­µå°¡ ºÒ·Á °¥ ¶§¸¶´Ù ƯÁ¤ÀÇ ¡¸ÄÚµå º£À̽º ·Î´õ¡¹¸¦ °ü·ÃÁöÀ» ¼ö ÀÖ½À´Ï´Ù. ÄÚµå º£À̽º ·Î´õ´Â codebase Àμö¿Í ÇöÀçÀÇ threadÀÇ ÄÁÅØ½ºÆ® Ŭ·¡½º ·Î´õ (Thread.getContextClassLoader() ¸¦ ÂüÁ¶)¸¦ Á¶ÇÕÇØ °Ë»öµË´Ï´Ù. ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ÀÌ ÇÁ·Î¹ÙÀÌ´õ´Â Ŭ·¡½º ·Î´õ ÀνºÅϽºÀÇ ³»ºÎ Å×À̺í (Àû¾îµµ URLClassLoader ÀνºÅϽº¸¦ Æ÷ÇÔÇÑ´Ù)À» º¸°ü À¯ÁöÇÕ´Ï´Ù. ÀÌ Å×À̺íÀÇ Å°´Â ºÎ¸ðÀÇ Å¬·¡½º ·Î´õ¿Í ÄÚµå º£À̽º URL ÆÐ½º (URL ¼ø¼­ ÷ºÎ ¸®½ºÆ®)ÀÇ Æä¾îÀÔ´Ï´Ù. codebase Àμö°¡ null °æ¿ì, ÄÚµå º£À̽º URL ÆÐ½º´Â ½Ã½ºÅÛ ÇÁ·ÎÆÛƼ java.rmi.server.codebase °ª, ÀÌÀüÀÇ Ä³½¬µÈ °ªÀÇ ¾î´À ÂÊÀΰ¡¿¡ µË´Ï´Ù. ¾î´À ÄÚµå º£À̽º URL ÆÐ½º°¡ Àִ ƯÁ¤ÀÇ ÄÁÅØ½ºÆ® ³»¿¡¼­ ÀÌÇÏÀÇ ¸î°³ÀÇ ¸Þ¼­µåÀÇ È£ÃâÀÇ codebase Àμö·Î¼­ °Ç³×¹Þ¾ÒÀ» °æ¿ì, Å×ÀÌºí³»ÀÇ ·Î´õ °¡¿îµ¥, ÆÐ½º°¡ ÁöÁ¤µÈ ÄÚµå º£À̽º URL ÆÐ½º, ºÎ¸ð°¡ ÇöÀç threadÀÇ ÄÁÅØ½ºÆ® Ŭ·¡½º ·Î´õÀÎ °Í °°Àº ·Î´õ°¡, ÄÚµå º£À̽º ·Î´õ°¡ µË´Ï´Ù. ±×·¯ÇÑ ·Î´õ°¡ ¹ß°ßµÇÁö ¾Ê¾Ò´ø °æ¿ì, ±×·¯ÇÑ ·Î´õ°¡ »õ·Ó°Ô ÀÛ¼ºµÇ¾î Å×ÀÌºí¿¡ Ãß°¡µË´Ï´Ù. ´Ù¸¸, ÀÌ Å×À̺íÀº, µµ´Þ ºÒ°¡´ÉÇÑ ·Î´õ¿Í ±× ·Î´õ¿¡ Á¤Àǵǰí Àִ Ŭ·¡½º°¡ °¡ºñÁö Ä÷ºÆ®µÇµµ·Ï, ·Î´õ¿¡°Ô·ÎÀÇ °­ÂüÁ¶¸¦ º¸°ü À¯ÁöÇÏÁö ¾Ê½À´Ï´Ù. ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏÁö ¾ÊÀ» ¶§¿¡ ½Å·ÚµÇÁö ¾Ê´Â Äڵ尡 °¡»ó ¸Ó½Å¿¡ ¾Ï¹¬ÀûÀ¸·Î ·Îµå µÇÁö ¾Ê°Ô Çϱâ À§Çؼ­, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ ¼³Á¤µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â ÄÚµå º£À̽º ·Î´õ´Â ÇöÀçÀÇ threadÀÇ ÄÁÅØ½ºÆ® Ŭ·¡½º ·Î´õ°¡ µË´Ï´Ù (ÁöÁ¤µÈ ÄÚµå º£À̽º URL ÆÐ½º´Â ¹«½ÃµÇ¾î ¸®¸ðÆ® Ŭ·¡½º¸¦ ·ÎµåÇÒ ¼ö ¾ø°Ô µÈ´Ù).

getClassLoader ¸Þ¼­µå´Â ÁöÁ¤µÈ ÄÚµå º£À̽º URL ÆÐ½ºÀÇ ÄÚµå º£À̽º ·Î´õ¸¦ µ¹·ÁÁÝ´Ï´Ù. ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, È£ÃâÃø ÄÁÅØ½ºÆ® ¿¡ ÄÚµå º£À̽º URL ÆÐ½º³»ÀÇ ¸ðµç URL ¿¡ ´ëÇÑ ¾×¼¼½º±ÇÀÌ ¾øÀ» ¶§´Â SecurityException °¡ Throw µË´Ï´Ù.

loadClass ¸Þ¼­µå´Â ÁöÁ¤µÈ À̸§ÀÇ Å¬·¡½º¸¦ ´ÙÀ½ÀÇ ¹æ¹ýÀ¸·Î ·Îµå¸¦ ½ÃµµÇÕ´Ï´Ù.

defaultLoader Àμö°¡ null °¡ ¾Æ´Ñ °æ¿ì´Â ¿ì¼± defaultLoader¸¦ »ç¿ëÇØ, ÁöÁ¤µÈ name Ŭ·¡½ºÀÇ ·Îµå¸¦ ½ÃµµÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½°ú °°ÀÌ Æò°¡ÇÕ´Ï´Ù.

     Class.forName(name, false, defaultLoader)
 
Ŭ·¡½º¸¦ defaultLoader ·ÎºÎÅÍ ·ÎµåÇÒ ¼ö ÀÖ¾úÀ» °æ¿ì, ±× Ŭ·¡½º°¡ µ¹·ÁÁÖ°íÁý´Ï´Ù. ClassNotFoundException ÀÌ¿ÜÀÇ ¿¹¿Ü°¡ Throw µÇ¾úÀ» °æ¿ì´Â ±× ¿¹¿Ü°¡ È£ÃâÇØ Ãø¿¡ Throw µË´Ï´Ù.

´ÙÀ½¿¡ loadClass ¸Þ¼­µå°¡, ÁöÁ¤µÈ ÄÚµå º£À̽º URL ÆÐ½ºÀÇ ÄÚµå º£À̽º ·Î´õ¸¦ »ç¿ëÇØ, ÁöÁ¤µÈ name Ŭ·¡½ºÀÇ ·Îµå¸¦ ½ÃµµÇÕ´Ï´Ù. ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, È£ÃâÃø ÄÁÅØ½ºÆ® ¿¡´Â ÄÚµå º£À̽º URL ÆÐ½º³»ÀÇ ¸ðµç URL ¿¡ ´ëÇÑ ¾×¼¼½º±ÇÀÌ ÇÊ¿äÇÕ´Ï´Ù. ¾×¼¼½º±ÇÀÌ ¾ø´Â °æ¿ì´Â ÄÚµå º£À̽º ·Î´õ ´ë½Å¿¡ ÇöÀçÀÇ threadÀÇ ÄÁÅØ½ºÆ® Ŭ·¡½º ·Î´õ°¡ »ç¿ëµË´Ï´Ù.

loadProxyClass ¸Þ¼­µå´Â ´ÙÀ½ÀÇ ¹æ¹ýÀ¸·Î ÁöÁ¤µÈ ÀÎÅÍÆäÀ̽ºÀÇ µ¿Àû ÇÁ·Ï½Ã Ŭ·¡½º¸¦ µ¹·ÁÁÝ´Ï´Ù.

defaultLoader Àμö°¡ null Àܷ̿Π±× ·Î´õ¸¦ »ç¿ëÇØ ÁöÁ¤µÈ ÀÎÅÍÆäÀ̽º¸¦ ¸ðµÎ ÇØ°áÇÒ ¼ö ÀÖ´Â °æ¿ì

  • ÇØ°áµÈ ÀÎÅÍÆäÀ̽º°¡ ¸ðµÎ public °æ¿ì´Â ¿ì¼± Proxy.getProxyClass ¸¦ »ç¿ëÇØ, ÄÚµå º£À̽º ·Î´õ·ÎºÎÅÍ ±× ÀÎÅÍÆäÀ̽ºÀÇ µ¿Àû ÇÁ·Ï½Ã Ŭ·¡½º¸¦ ÃëµæÇÏ·Á°í ÇÑ´Ù. IllegalArgumentException °¡ Throw µÇ¾úÀ» °æ¿ì´Â defaultLoader ·ÎºÎÅÍ ±× ÀÎÅÍÆäÀ̽ºÀÇ µ¿Àû ÇÁ·Ï½Ã Ŭ·¡½º¸¦ ÃëµæÇÏ·Á°í ÇÑ´Ù. ¾î´À ÂÊÀÇ °æ¿ìµµ IllegalArgumentException °¡ Throw µÇ¾úÀ» ¶§´Â ClassNotFoundException °¡ Throw µÈ´Ù. ´Ù¸¥ ¿¹¿Ü°¡ Throw µÇ¾úÀ» °æ¿ì, ±× ¿¹¿Ü´Â È£ÃâÇØ Ãø¿¡ Throw µÈ´Ù
  • ÇØ°áµÈ ÀÎÅÍÆäÀ̽º°¡ public ÀÌ¿ÜÀÇ °æ¿ì, ±×°ÍµéÀÌ ¸ðµÎ °°Àº Ŭ·¡½º ·Î´õ¿¡ Á¤Àǵǰí ÀÖÀ» ¶§´Â ±× ·Î´õ·ÎºÎÅÍ ±× ÀÎÅÍÆäÀ̽ºÀÇ µ¿Àû ÇÁ·Ï½Ã Ŭ·¡½º¸¦ ÃëµæÇÏ·Á°í ÇÑ´Ù
  • »ó±â ÀÌ¿ÜÀÇ °æ¿ì´Â LinkageError °¡ Throw µÈ´Ù (ÁöÁ¤µÈ ÀÎÅÍÆäÀ̽º¸¦ ¸ðµÎ ±¸ÇöÇϴ Ŭ·¡½º´Â ¾î´À ·Î´õ¿¡µµ Á¤ÀÇÇÒ ¼ö ¾ø±â ¶§¹®¿¡)

ÁöÁ¤µÈ ¸ðµç ÀÎÅÍÆäÀ̽º¸¦ ÄÚµå º£À̽º ·Î´õ¸¦ »ç¿ëÇØ ÇØ°áÇÒ ¼ö ÀÖ´Â °æ¿ì

  • ÇØ°áµÈ ÀÎÅÍÆäÀ̽º°¡ ¸ðµÎ public °æ¿ì´Â ±× ÀÎÅÍÆäÀ̽ºÀÇ µ¿Àû ÇÁ·Ï½Ã Ŭ·¡½º¸¦ ÄÚµå º£À̽º ·Î´õ·ÎºÎÅÍ ÃëµæÇÏÀÚ ÇÑ´Ù. IllegalArgumentException °¡ Throw µÇ¾úÀ» °æ¿ì´Â ClassNotFoundException °¡ Throw µÈ´Ù
  • ÇØ°áµÈ ÀÎÅÍÆäÀ̽º°¡ public ÀÌ¿ÜÀÇ °æ¿ì, ±×°ÍµéÀÌ ¸ðµÎ °°Àº Ŭ·¡½º ·Î´õ¿¡ Á¤Àǵǰí ÀÖÀ» ¶§´Â ±× ·Î´õ·ÎºÎÅÍ ±× ÀÎÅÍÆäÀ̽ºÀÇ µ¿Àû ÇÁ·Ï½Ã Ŭ·¡½º¸¦ ÃëµæÇÏ·Á°í ÇÑ´Ù
  • »ó±â ÀÌ¿ÜÀÇ °æ¿ì´Â LinkageError °¡ Throw µÈ´Ù (ÁöÁ¤µÈ ÀÎÅÍÆäÀ̽º¸¦ ¸ðµÎ ±¸ÇöÇϴ Ŭ·¡½º´Â ¾î´À ·Î´õ¿¡µµ Á¤ÀÇÇÒ ¼ö ¾ø±â ¶§¹®¿¡)

»ó±â ÀÌ¿ÜÀÇ °æ¿ì, ÇØ°áÇÒ ¼ö ¾ø¾ú´ø ÁöÁ¤ ÀÎÅÍÆäÀ̽º¿¡ ´ëÇØ,ClassNotFoundException °¡ Throw µË´Ï´Ù.

¹Ýȯ°ª:
µðÆúÆ®ÀÇ ¼­ºñ½º ÇÁ·Î¹ÙÀÌ´õÀÇ Á¤±ÔÀÇ ÀνºÅϽº
¿¹¿Ü:
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì¿¡ ±× checkPermission ¸Þ¼­µå È£ÃâÇØ¿¡ ½ÇÆÐÇßÀ» ¶§
µµÀÔµÈ ¹öÁ¯:
1.4

getSecurityContext

@Deprecated 
public static Object  getSecurityContext(ClassLoader  loader)
ÃßõÇÏÁö ¾Ê½À´Ï´Ù .  ´ëü´Â ¾ø½À´Ï´Ù. Java 2 Ç÷§Æû 1.2 ÀÌÈÄÀÇ RMI ¿¡¼­´Â Ŭ·¡½º ·Î´õÀÇ ½ÃÅ¥·¯Æ¼ ÄÁÅØ½ºÆ® À» ÃëµæÇϱâ À§Çؼ­ ÀÌ ¸Þ¼­µå¸¦ »ç¿ëÇÏÁö ¾Ê½À´Ï´Ù.

ÁöÁ¤µÈ Ŭ·¡½º ·Î´õÀÇ ½ÃÅ¥·¯Æ¼ ÄÁÅØ½ºÆ® À» µ¹·ÁÁÝ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
loader - ½ÃÅ¥·¯Æ¼ ÄÁÅØ½ºÆ® ÀÇ Ãëµæ¿øÀÇ Å¬·¡½º ·Î´õ
¹Ýȯ°ª:
½ÃÅ¥·¯Æ¼ ÄÁÅØ½ºÆ®
°ü·Ã Ç׸ñ:
SecurityManager.getSecurityContext()

JavaTM 2 Platform
Standard Ed. 5.0

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.