|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | constructor | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
java.lang.Objectjava.beans.PersistenceDelegate
public abstract class PersistenceDelegate
PersistenceDeligate Ŭ·¡½º´Â Ŭ·¡½ºÀÇ °ø°³ API¿¡ Æ÷ÇԵǴ ¸Þ¼µå¿¡ ÀÇÇØ ÁöÁ¤µÈ Ŭ·¡½ºÀÇ ÀνºÅϽº »óŸ¦ Ç¥ÇöÇÕ´Ï´Ù. ¿¹¸¦ µé¾îÀÌ À§¾ç ¸ðµ¨À» ä¿ëÇϰí ÀÖ´Â XMLEncoder
µîÀÇ ½ºÆ®¸²Àº Áö±Ý±îÁö¿Í °°ÀÌ Áö¼Ó¼º°ú Ŭ·¡½º ÀÚü¸¦ °ü·ÃÁþ´Â ´ë½Å¿¡
ObjectOutputStream
·Î
»ç¿ëµÇ´Â readObject
¸Þ¼µå¿Í writeObject
¸Þ¼µå¿¡ÀÇÇØ ±× µ¿ÀÛÀ» Ŭ·¡½º·ÎºÎÅÍ ¶¼¾î³» °ü¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù
. º¸Åë, Ŭ·¡½º´Â ÀÌ À§¾ç schema¸¦ »ç¿ëÇØ ÀÌ·¯ÇÑ Á¤º¸³ª ±Ô¾àÀ» °£´ÜÇÏ°Ô Ç¥ÇöÇϴµ¥ ÃÖÀûÀÇ Àå¼ÒÀÔ´Ï´Ù. ±×·¯³ª, ´Ü 1°³ÀÇ Å¬·¡½º¿¡ »ç¼ÒÇÑ ¹®Á¦°¡ Æ÷ÇԵǾî ÀÖ´Â °Í¸¸À¸·Î °´Ã¼ ±×·¡ÇÁ ÀüüÀÇ write¸¦ ÇÒ ¼ö ¾ø°Ô µÇ´Â °æ¿ìµµ ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì
¾îÇø®ÄÉÀÌ¼Ç °³¹ßÀÚ´Â ¹®Á¦ÀÇ ¹ß»ýÇϰí Àִ Ŭ·¡½ºÀÇ ±×¸²ÀÚ¸¦ ·ÎÄ÷Πµ¶ÀÚÀûÀ¸·Î ÀÛ¼ºÇÏ´ÂÁö, Áö¼Ó¼ºÀ» À¯ÁöÇϱâ À§ÇÑ ±× ¿ÜÀÇ ¼ö¹ýÀ» »Ì°Ô µË´Ï´Ù. ÀÌ·¯ÇÑ »óȲÀ¸·Î ÀÌ À§¾ç ¸ðµ¨À» ÀÌ¿ëÇϸé, ¾îÇø®ÄÉÀÌ¼Ç °³¹ßÀÚ´Â ¾îÇø®ÄÉÀÌ¼Ç ÀÚü¿¡´Â Æ÷ÇÔµÇÁö ¾Ê´Â Ŭ·¡½ºÀÇ ±¸ÇöÀ¸·Î º¯°æÀ» ´õÇÏ´Â ÀÏ ¾øÀÌ, ºñ±³Àû ±ú²ýÇÑ ¹æ¹ýÀ¸·Î Á÷·ÄÈ Ã³¸®ÀÇ ¸ðµç ±¹¸éÀ» Á¦¾îÇÒ ¼ö ÀÖ½À´Ï´Ù
.
ÀÌ Áö¼Ó schema´Â À§¾ç ¸ðµ¨À» »ç¿ëÇÑ´Ù°í ÇÏ´Â Á¡ »Ó¸¸ÀÌ ¾Æ´Ï¶ó, ´ëÀÀÇÏ´Â readObject
¸Þ¼µå¾øÀÌ writeObject
¸Þ¼µåÀÇ ¾Æ³¯·Î±×¸¦ ¿ä±¸ÇÑ´Ù°í ÇÏ´Â Á¡¿¡¼µµ, Á¾·¡ÀÇ Á÷·ÄÈ schema¿Í´Â ´Ù¸¨´Ï´Ù. writeObject
¸Þ¼µåÀÇ ¾Æ³¯·Î±×´Â °ø°³ API¸¦ »ç¿ëÇØ °³°³ÀÇ ÀνºÅϽº¸¦ encode ÇÕ´Ï´Ù. Á÷·ÄÈ µÈ ÆûÀÇ read ¼ö¼ÓÀº Java ¾ð¾î »ç¾ç¿¡ ±â·ÏµÇ°í ÀÖ´Â ´ë·Î ¸Þ¼µå È£ÃâÀÇ ½Ã¸àƽ½º¿¡ ÀÇÇØ Á¤Àǵǰí Àֱ⠶§¹®¿¡
readObject
¸Þ¼µåÀÇ ¾Æ³¯·Î±×¸¦ Á¤ÀÇÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù. ÀÌ ¼ö¹ýÀ¸·Î ÀÛ¼ºµÈ ¾îÄ«À̺ê(archive)°¡ ÂüÁ¶Ã³ Ŭ·¡½ºÀÇ ºñ°ø°³ ±¸ÇöÀÇ º¯°æÀÇ ¿µÇâÀ» ¹ÞÁö ¾Ê°Ô ÇÏ·Á¸é,
¹öÀü
¸¶´Ù º¯ÈÇÑ´Ù°í »ý°¢µÇ´Â writeObject
¿Í
readObject
±¸ÇöÀÇ Á¸°ü°è(dependencies)À» Á¦°ÅÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.
ÀÌÇÏ¿Í °°ÀÌ, Áö¼ÓÀûÀÎ Delegate´Â °´Ã¼ÀÇ Áö¼Ó¼º¿¡ °üÇÑ ¸ðµç ±¹¸éÀ» Á¦¾îÇÕ´Ï´Ù.
XMLEncoder
»ý¼ºÀÚ °³¿ä | |
---|---|
PersistenceDelegate ()
|
¸Þ¼µå °³¿ä | |
---|---|
protected void |
initialize (Class <? > type,
Object oldInstance,
Object newInstance,
Encoder out)
newInstance ¿¡ ´ëÇØ¼
»õ·Î¿î ÀνºÅϽº°¡ oldInstance ¿Í
¡¸µî°¡¡¹°¡ µÈ´Ù°í ÇÏ´Â ºÎÀÛ¿ëÀ» ¹ÌÄ¡´Â ÀÏ·ÃÀÇ ¹®ÀåÀ» »ý¼ºÇÕ´Ï´Ù. |
protected abstract Expression |
instantiate (Object oldInstance,
Encoder out)
°ª oldInstance ¸¦ °¡Áö´Â ½ÄÀ» ¸®ÅÏÇÕ´Ï´Ù. |
protected boolean |
mutatesTo (Object oldInstance,
Object newInstance)
newInstance ¿¡ ÀÏ·ÃÀÇ ¹®ÀåÀ» Àû¿ëÇÏ´Â °ÍÀ¸·Î½á oldInstance ¿Í
µî°¡ÀÇ º¹»çº»À» ÀÛ¼ºÇÒ ¼ö ÀÖ´Â °æ¿ì´Â true¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
void |
writeObject (Object oldInstance,
Encoder out)
writeObject ´Â
Áö¼Ó¼ºÀ» ½ÇÇöÇÏ´Â À¯ÀÏÇÑ ¼ö´ÜÀ¸·Î¼Encoder ¿¡
ÀÇÇØ Á¾·¡ÀÇ À§¾ç ¸ðµå·Î »ç¿ëµË´Ï´Ù. |
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼µå |
---|
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
»ý¼ºÀÚ »ó¼¼ |
---|
public PersistenceDelegate()
¸Þ¼µåÀÇ »ó¼¼ |
---|
public void writeObject(Object oldInstance, Encoder out)
writeObject
´Â
Áö¼Ó¼ºÀ» ½ÇÇöÇÏ´Â À¯ÀÏÇÑ ¼ö´ÜÀ¸·Î¼Encoder
¿¡
ÀÇÇØ Á¾·¡ÀÇ À§¾ç ¸ðµå·Î »ç¿ëµË´Ï´Ù. ÀÌ ¸Þ¼µå´Â ÆÄÀ̳ÎÀÌ ¾Æ´Õ´Ï´Ù¸¸, º¸Åë, »ó¼ÓÀÇ ÇÊ¿ä´Â ¾ø½À´Ï´Ù.
ÀÌ ±¸ÇöÀº ÃÖÃÊ·Î ½ºÆ®¸²ÀÌ À̹Ì
ÀÌ °´Ã¼¸¦ °ËÃâÇϰí ÀÖÀ»Áö ¾î¶³Áö¸¦ È®ÀÎÇÕ´Ï´Ù. ´ÙÀ½¿¡
½ºÆ®¸²·ÎºÎÅÍ ¸®ÅÏµÈ È帰¡ oldInstance
Á¤È®ÇÑ Ä«ÇÇ·Î º¯°æ °¡´ÉÇѰ¡ ¾î¶²°¡¸¦ È®ÀÎÇϱâ À§ÇØ, mutatesTo
¸Þ¼µå°¡ È£ÃâµË´Ï´Ù. º¯°æ °¡´ÉÇÑ °æ¿ì, initialize
¸Þ¼µå°¡ ºÒ·Á°¡
Ãʱâȸ¦ ÇÕ´Ï´Ù. º¯°æÇÒ ¼ö ¾ø´Â °æ¿ì, È帴 ½ºÆ®¸²·ÎºÎÅÍ »èÁ¦µÇ¾îinstantiate
¸Þ¼µåÀÇ È£Ãâ¿¡ÀÇÇØ ÀÌ °´Ã¼ÀÇ »õ·Î¿î È帰¡ ÀÛ¼ºµË´Ï´Ù.
oldInstance
- ÀÌ ½Ä¿¡¼ ÀÛ¼ºµÇ´Â ÀνºÅϽºout
- ÀÌ ½ÄÀÌ Ãâ·ÂÇØÁö´Â ½ºÆ®¸²protected boolean mutatesTo(Object oldInstance, Object newInstance)
newInstance
¿¡ ÀÏ·ÃÀÇ ¹®ÀåÀ» Àû¿ëÇÏ´Â °ÍÀ¸·Î½á oldInstance
¿Í
µî°¡ÀÇ º¹»çº»À» ÀÛ¼ºÇÒ ¼ö ÀÖ´Â °æ¿ì´Â true¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ ¸Þ¼µåÀÇ »ç¾ç¿¡¼´Â °ø°³ API¿¡ Æ÷ÇԵǾî ÀÖ´Â °ü·Ã ¸Þ¼µåÀÇ µ¿ÀÛÀ» ºñ±³ÇßÀ» ¶§, º¯°æ ÈÄÀÇ ÀνºÅϽº¿Í oldInstance
¸¦ ±¸º°ÇÒ ¼ö ¾ø´Â °æ¿ì¿¡
À̰͵éÀ» ¡¸µî°¡ÀÌ´Ù¡¹¶ó°í ÇÕ´Ï´Ù. µ¡ºÙ¿© ¿©±â¿¡¼´Â ÀüÇô ºÐº°ÀÌ µÇÁö ¾Ê´Â º¹»çº»À» »ý¼ºÇÏ´Â °ÍÀ» ¹æÇØÇÏ´Â hashCode
³ª toString
¿Í
°°Àº ¸Þ¼µå°¡ ÀÖ´Â °ÍÀ» °í·ÁÇØ, ¡¸¸ðµç ¸Þ¼µå¡¹¶ó°í Çϴ ǥÇöÀº ¾Æ´Ï°í ¡¸°ü·Ã ¸Þ¼µå¡¹¶ó°í Çϴ ǥÇöÀ» »ç¿ëÇϰí ÀÖ½À´Ï´Ù.
2°³ÀÇ ÀνºÅϽºÀÇ Å¬·¡½º°¡ °°Àº °æ¿ì´Â µðÆúÆ®·Î true
°¡ ¸®Åϵ˴ϴÙ
.
oldInstance
- Ä«ÇǵǴ ÀνºÅϽºnewInstance
- º¯°æµÇ´Â ÀνºÅϽº
oldInstance
·Î
ÀÏ·ÃÀÇ º¯°æÀ» Àû¿ëÇÏ´Â °Í¿¡ÀÇÇØ newInstance
¿Í
µî°¡ÀÇ º¹»çº»À» ÀÛ¼ºÇÒ ¼ö ÀÖ´Â °æ¿ì´Â trueprotected abstract Expression instantiate(Object oldInstance, Encoder out)
oldInstance
¸¦ °¡Áö´Â ½ÄÀ» ¸®ÅÏÇÕ´Ï´Ù. ÀÌ ¸Þ¼µå¸¦ »ç¿ëÇØ, ÁöÁ¤µÈ °´Ã¼ÀÇ ÀÛ¼º¿¡ »ç¿ëÇÏ´Â »ý¼ºÀÚ
¶Ç´Â ÆÑÅ丮 ¸Þ¼µåÀÇ Æ¯Â¡À» ±â¼úÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, Field
Ŭ·¡½ºÀÇ Áö¼ÓÀûÀÎ DelegateÀÇ instantiate
¸Þ¼µå´Â ´ÙÀ½°ú °°ÀÌ Á¤Àǵ˴ϴÙ.
Field f = (Field) oldInstance; return new Expression(f, f.getDeclaringClass(), "getField", new Object[]{f.getName()});¸®ÅÏµÈ ½ÄÀÇ °ªÀ» ¼±¾ðÇϰí Àֱ⠶§¹®¿¡ ½ÄÀÇ °ªÀº (
getValue
·Î
ºÎÅÍ ¸®ÅϵÈ
°ª°ú °°°Ô) oldInstance
¿Í
µ¿ÀÏÇÏ°Ô µË´Ï´Ù.
oldInstance
- ÀÌ ½Ä¿¡¼ ÀÛ¼ºµÇ´Â ÀνºÅϽºout
- ÀÌ ½ÄÀÌ Ãâ·ÂÇØÁö´Â ½ºÆ®¸²
oldInstance
¸¦ °¡Áö´Â ½Äprotected void initialize(Class <? > type, Object oldInstance, Object newInstance, Encoder out)
newInstance
¿¡ ´ëÇØ¼
»õ·Î¿î ÀνºÅϽº°¡ oldInstance
¿Í
¡¸µî°¡¡¹°¡ µÈ´Ù°í ÇÏ´Â ºÎÀÛ¿ëÀ» ¹ÌÄ¡´Â ÀÏ·ÃÀÇ ¹®ÀåÀ» »ý¼ºÇÕ´Ï´Ù. ÀÌ ¸Þ¼µåÀÇ »ç¾ç¿¡¼´Â ¸Þ¼µå·ÎºÎÅÍ °ªÀÌ ¸®ÅÏµÈµÚ °ø°³ API¿¡ Æ÷ÇԵǴ ¸ðµç ¸Þ¼µåÀÇ µ¿ÀÛÀ» ºñ±³ÇßÀ» ¶§, º¯°æ ³¡³ ÀνºÅϽº¿Í newInstance
¸¦ ±¸º°ÇÒ ¼ö ¾ø´Â °æ¿ì¿¡
À̰͵éÀ» ¡¸µî°¡ÀÌ´Ù¡¹¶ó°í ÇÕ´Ï´Ù.
º¸Åë, ±¸ÇöÀº, oldInstance
¿Í
±× °ø°³ °¡´É »óÅÂ ¿Ü¿¡
¹«¾ùÀÌ ÀϾ´ÂÁö¸¦ ³ªÅ¸³»´Â ÀÏ·ÃÀÇ ¹®ÀåÀ» »ý¼ºÇÏ´Â °ÍÀ¸·Î½á, ÀÌ ¸ñÀûÀ» ´Þ¼ºÇÕ´Ï´Ù. ÀÌ·¯ÇÑ ¹®ÀåÀº read½Ã¿¡ ÀÔ·Â ½ºÆ®¸² »óŸ¦ ½Ã¹Ä·¹ÀÌÆ® ÇÏ´Â º¹Á¦µÈ ȯ°æÀÇ ¿ä¼Ò°¡ Æ÷ÇÔµÈ ½ÄÀ» µ¹·ÁÁÖ´Â writeExpression
¸Þ¼µå¿¡ÀÇÇØ Ãâ·Â ½ºÆ®¸²¿¡ ¼Û½ÅµË´Ï´Ù. ¸®ÅϵÈ
°¢ ¹®Àº ³°Àº ȯ°æÀÇ ¸ðµç ÀνºÅϽº¸¦ »õ·Î¿î ȯ°æÀÇ °´Ã¼·Î ¿Å°Ü³õ½À´Ï´Ù. ƯÈ÷, ÀÌ·¯ÇÑ ¹®ÀåÀÇ Å¸°ÙÀÇ ÂüÁ¶ (óÀ½Àº oldInstance
¿¡
ÀÇ ÂüÁ¶)´Â newInstance
ÂüÁ¶·Î¼ ¸®Åϵ˴ϴÙ
. ÀÌ·¯ÇÑ ¹®ÀåÀ» ½ÇÇàÇϸé, »õ·Î¿î ȯ°æÀÇ °´Ã¼·Î º¯°æÀÌ ´õÇØÁö´Â °Í°ú µ¿½Ã¿¡
2°³ÀÇ °´Ã¼ »óŰ¡ ¼¼È÷ °¡±î¿öÁ® °©´Ï´Ù. Initialize ¸Þ¼µå°¡ µ¹·ÁÁÖ°íÁú ¶§´Â °ø°³ API ·Î 2°³ÀÇ ÀνºÅϽº¸¦ ±¸º°ÇÒ ¼ö ¾ø°Ô µÇ°í ÀÖÀ» °ÍÀÔ´Ï´Ù. ¹«¾ùº¸´Ù Áß¿äÇÑ °ÍÀº ÀÌ·¯ÇÑ °´Ã¼¸¦ µî°¡·Î ÇÏ´Â ¼ö¼ÓÀÌ Ãâ·Â ½ºÆ®¸²¿¡ ÀÇÇØ ±â·ÏµÇ¾î ½ºÆ®¸²ÀÇ Ç÷¡½Ã½Ã¿¡ ½ÇÁ¦ÀÇ Ãâ·ÂÀ» Çü¼ºÇÑ´Ù°í ÇÏ´Â Á¡ÀÔ´Ï´Ù.
µðÆúÆ® ±¸ÇöÀº ÀÌ ÇüÅÂÀÇ ½´ÆÛ Ŭ·¡½ºÀÇ initialize
¸Þ¼µå¸¦ È£ÃâÇÕ´Ï´Ù.
oldInstance
- Ä«ÇǵǴ ÀνºÅϽºnewInstance
- º¯°æµÇ´Â ÀνºÅϽºout
- Ãʱâȹ®ÀÌ Ãâ·ÂÇØÁö´Â ½ºÆ®¸²
|
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 µµ ÂüÁ¶ÇϽʽÿÀ.