JavaTM 2 Platform
Standard Ed. 5.0

java.rmi.server
Ŭ·¡½º RMIClassLoaderSpi

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

public abstract class RMIClassLoaderSpi
extends Object

RMIClassLoaderSpi´Â RMIClassLoader ¼­ºñ½º ÇÁ·Î¹ÙÀÌ´õ ÀÎÅÍÆäÀ̽ºÀÔ´Ï´Ù. ƯÈ÷, RMIClassLoaderSpiÀνºÅϽº´Â RMIClassLoader ´ÙÀ½ÀÇ static ¸Þ¼­µåÀÇ ±¸ÇöÀ» Á¦°øÇÕ´Ï´Ù.

ÀÌ·¯ÇÑ ¸Þ¼­µåÁß ÇÑÂÊÀÌ ºÒ·Á°¡ ¸é, ÀÌ Å¬·¡½ºÀÇ ÀνºÅϽº»óÀÇ ´ëÀÀÇÏ´Â ¸Þ¼­µå¿¡ 󸮰¡ À§¾ç µË´Ï´Ù. °¢ ¸Þ¼­µå°¡ ÇÁ·Î¹ÙÀÌ´õ ÀνºÅϽº¿¡ À§¾ç ÇÏ´Â ¹æ¹ýÀÇÀÚ¼¼ÇÑ ³»¿ëÀº °¢ ¸Þ¼­µåÀÇ ¸Þ´º¾óÀ» ÂüÁ¶ÇϽʽÿÀ. ÇÁ·Î¹ÙÀÌ´õ ÀνºÅϽº°¡ ¾î¶»°Ô ¼±ÅõǴÂÁö¿¡ ´ëÇؼ­´Â RMIClassLoader ¸Þ´º¾óÀ» ÂüÁ¶ÇϽʽÿÀ.

µµÀÔµÈ ¹öÀü :
JDK1. 4
°ü·Ã Ç׸ñ:
RMIClassLoader

»ý¼ºÀÚ °³¿ä
RMIClassLoaderSpi ()
           
 
¸Þ¼­µå °³¿ä
abstract  String getClassAnnotation (Class <? > cl)
          RMIClassLoader.getClassAnnotation(Class) ±¸ÇöÀ» Á¦°øÇÕ´Ï´Ù.
abstract  ClassLoader getClassLoader (String  codebase)
          RMIClassLoader.getClassLoader(String) ±¸ÇöÀ» Á¦°øÇÕ´Ï´Ù.
abstract  Class <? > loadClass (String  codebase, String  name, ClassLoader  defaultLoader)
          RMIClassLoader.loadClass(URL, String), RMIClassLoader.loadClass(String, String) ¹× RMIClassLoader.loadClass(String, String, ClassLoader) ±¸ÇöÀ» Á¦°øÇÕ´Ï´Ù.
abstract  Class <? > loadProxyClass (String  codebase, String [] interfaces, ClassLoader  defaultLoader)
          RMIClassLoader.loadProxyClass(String, String[], ClassLoader) ±¸ÇöÀ» Á¦°øÇÕ´Ï´Ù.
 
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼­µå
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

»ý¼ºÀÚ »ó¼¼

RMIClassLoaderSpi

public RMIClassLoaderSpi()
¸Þ¼­µåÀÇ »ó¼¼

loadClass

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

                                   ClassNotFoundException 
RMIClassLoader.loadClass(URL, String), RMIClassLoader.loadClass(String, String) ¹× RMIClassLoader.loadClass(String, String, ClassLoader) ±¸ÇöÀ» Á¦°øÇÕ´Ï´Ù. ÁöÁ¤µÈ ÄÚµå º£À̽º URL Æнº·ÎºÎÅÍ Å¬·¡½º¸¦ ·ÎµåÇÕ´Ï´Ù. ÁöÁ¤µÈ ·Î´õ¸¦ »ç¿ëÇÒ ¼öµµ ÀÖ½À´Ï´Ù. º¸Åë, ÇÁ·Î¹ÙÀÌ´õ ±¸ÇöÀº ÁöÁ¤µÈ defaultLoader¸¦ »ç¿ëÇØ ÁöÁ¤µÈ Ŭ·¡½ºÀÇ ÇØ°áÀ» ½ÃµµÇÑ ÈÄ¿¡ ÄÚµå º£À̽º URL Æнº·ÎºÎÅÍÀÇ Å¬·¡½ºÀÇ ÇØ°áÀ» ½ÃµµÇÕ´Ï´Ù.

ÀÌ ¸Þ¼­µåÀÇ ±¸ÇöÀº ÁöÁ¤µÈ À̸§ÀÇ Å¬·¡½º¸¦ µ¹·ÁÁÖ´ÂÁö, ¿¹¿Ü¸¦ Throw ÇÕ´Ï´Ù.

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

loadProxyClass

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

                                        ClassNotFoundException 
RMIClassLoader.loadProxyClass(String, String[], ClassLoader) ±¸ÇöÀ» Á¦°øÇÕ´Ï´Ù. ÁöÁ¤µÈ À̸§À» °¡Áö´Â ÀÎÅÍÆäÀ̽º±ºÀ» ±¸ÇöÇÑ µ¿Àû ÇÁ·Ï½Ã Ŭ·¡½º (Proxy¸¦ ÂüÁ¶)¸¦, ÁöÁ¤µÈ ÄÚµå º£À̽º URL Æнº·ÎºÎÅÍ ·ÎµåÇÕ´Ï´Ù. ÁöÁ¤µÈ ·Î´õ¸¦ »ç¿ëÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

ÀÌ ¸Þ¼­µåÀÇ ±¸ÇöÀº ÁöÁ¤µÈ ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÏ´Â ÇÁ·Ï½Ã Ŭ·¡½º¸¦ µ¹·ÁÁÖ´ÂÁö, ¿¹¿Ü¸¦ Throw ÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù.

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

getClassLoader

public abstract ClassLoader  getClassLoader(String  codebase)
                                    throws MalformedURLException 
RMIClassLoader.getClassLoader(String) ±¸ÇöÀ» Á¦°øÇÕ´Ï´Ù. ÁöÁ¤µÈ ÄÚµå º£À̽º URL Æнº·ÎºÎÅÍ Å¬·¡½º¸¦ ·ÎµåÇϴ Ŭ·¡½º ·Î´õ¸¦ ¸®ÅÏÇÕ´Ï´Ù.

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

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

getClassAnnotation

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

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

JavaTM 2 Platform
Standard Ed. 5.0

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