ID ºÐ¼®±â·Î ±âº» ÇàÀÇ ½Äº°ÀÚ°¡ ÇÊ¿äÇÑ Å×À̺íÀ» Á¶È¸ÇÒ ¶§ ´ëü Java Ư¼º ÆÄÀÏÀ» »ç¿ëÇÏ¿© ±âº» Ç׸ñÀÇ ¾î¶² ¿À» »ç¿ëÇØ¾ß ÇÏ´ÂÁö¸¦ ¼³¸íÇÒ ¼ö ÀÖ½À´Ï´Ù.
±âº» Ư¼º ÆÄÀÏÀº IdResolveKeys.propertiesÀÌÁö¸¸, ¿øÇÒ °æ¿ì ÀÌ ÆÄÀÏÀ» ¼öÁ¤Çϰųª ID Resolve ¸í·ÉÀ» È£ÃâÇÒ ¶§ »ç¿ëÀÚ°¡ ¸¸µç ÆÄÀÏÀ» ÁöÁ¤ÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
![]()
![]()
![]()
![]()
IdResolveKeys.properties´Â ID ºÐ¼®±â°¡ È£ÃâµÈ µð·ºÅ丮¿¡ ÀÖ½À´Ï´Ù.
IdResolveKeys.properties¸¦ º¯°æÇÏ·Á¸é /QIBM/ProdData/WebCommerce/properties µð·ºÅ丮¿¡¼ ÆÄÀÏÀ» º¹»çÇÏ¿© /instroot/xml µð·ºÅ丮·Î º¹»çÇÑ ÈÄ »õ ÆÄÀÏ¿¡ ÇÊ¿äÇÑ º¯°æÀ» Àû¿ëÇϽʽÿÀ.
ÁÖ: À§ÀÇ µð·ºÅ丮´Â RESWCSID ¸í·ÉÀÌ »ç¿ëÇÏ´Â classpath¿¡ ÀÖ½À´Ï´Ù.
Ư¼º ÆÄÀÏÀ» »ç¿ëÇÏ¿© ½Äº°ÀÚ »ý¼º
´ÙÀ½ ¿¹¿¡¼, ADDRBOOK ¹× ADDRESS ·¹Äڵ忡 ´ëÇØ °¢°¢ ½Äº°ÀÚ ADDRBOOK_ID ¹× ADDRESS_ID¸¦ ºÐ¼®ÇØ¾ß ÇÕ´Ï´Ù. MEMBER ·¹ÄÚµåÀÇ ½Äº°ÀÚ´Â ÀÌ¹Ì ¾Ë·ÁÁ® ÀÖ½À´Ï´Ù. °¢ ·¹Äڵ帶´Ù WebSphere Commerce µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ ¿Ã¹Ù¸¥ ½Äº°ÀÚ°¡ ÇÊ¿äÇÕ´Ï´Ù. ¶ÇÇÑ, ADDRESS ·¹ÄÚµåÀÇ ADDRBOOK_ID·Î´Â foreign key Á¦ÇÑÀÚ¸¦ ÃæÁ·ÇÏ´Â ±âº» Å×À̺íÀÇ ½Äº°ÀÚ°¡ ÇÊ¿äÇÕ´Ï´Ù.
<MEMBER MEMBER_ID="100" TYPE="U" STATE="1" /> <MEMBER MEMBER_ID="101" TYPE="U" STATE="1" /> <ADDRBOOK MEMBER_ID="100" DISPLAYNAME="Friends" DISPLAYNAME ¿ÀÇ ½ÇÁ¦ °ª DESCRIPTION="All my friends" TYPE="P" /> <ADDRESS ADDRBOOK_ID="@Friends" DISPLAYNAMEÀ» »ç¿ëÇÏ´Â ADDRBOOK ÂüÁ¶ ã¾Æº¸±â °ª MEMBER_ID="101" NICKNAME="Bob" ADDRESS1="15 Brave Developers St." CITY="Toronto" ZIPCODE="A0A0A0" COUNTRY="Canada" STATUS="P" />
foreign-key Ű ¿¿¡ ´ëÇÑ ½Äº°ÀÚ¸¦ ºÐ¼®ÇÒ ¶§ °ü°è Çà¿¡¼ ±âº» ÇàÀÇ ¾î´À ¿À» »ç¿ëÇÏ´ÂÁö ½Äº°ÇÏ·Á¸é Ư¼º ÆÄÀÏÀÌ ÇÊ¿äÇÕ´Ï´Ù. À§ ÆÄÀÏÀÇ ±¸¹®À» ¿Ã¹Ù¸£°Ô ºÐ¼®Çϵµ·Ï Çϱâ À§ÇØ ´ÙÀ½ÀÌ Ã³¸®µË´Ï´Ù.
IdResolveKeys.properties¿¡¼ ´ÙÀ½À» ÁöÁ¤ÇϽʽÿÀ.
NAMEDELIMITER=@ SELECTDELIMITER=: ADDRBOOK=@DISPLAYNAME:DISPLAYNAME ADDRESS=@NICKNAME:NICKNAME
NAMEDELIMITER ¹× SELECTDELIMITER´Â ³ª¸ÓÁö Ư¼º ÆÄÀÏ Àüü¿¡¼ »ç¿ëµÇ´Â ºÐ¸®¹®ÀÚ¸¦ ¼³Á¤Çϸç ÀϰüµÇ°Ô »ç¿ëµÇ¾î¾ß ÇÕ´Ï´Ù.
ADDRBOOK=@DISPLAYNAME:DISPLAYNAMEÀº ÁÖ¼Ò·Ï ·¹Äڵ带 ¹ÞÀ» ¶§, ÁÖ¼Ò·Ï Çà¿¡ ´ëÇÑ ½Äº°ÀÚ°¡ ÀÛ¼ºµÊÀ» ¸»ÇÕ´Ï´Ù. DISPLAYNAME Çʵ尡 ÀÔ·Â ·¹Äڵ忡¼ ÃßÃâµÇ¾î »õ ½Äº°ÀÚ¿Í ¿¬°üÁþ´Â µ¥ »ç¿ëµË´Ï´Ù. DISPLAYNAME ¹®ÀÚ¿Àº ÁÖ¼Ò·Ï Çà DISPLAYNAMEÀ» ÀÏÄ¡½ÃÄÑ foreign key¿¡¼ ÇÊ¿ä·Î ÇÏ´Â ½Äº°ÀÚ¸¦ ºÐ¼®ÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù.
ÀÌÀü ÀÔ·Â ¿¹¿¡¼´Â DISPLAYNAMEÀÌ FriendsÀ̰í ÀÌ ·¹Äڵ忡 ´ëÇØ ÀÛ¼ºµÈ ½Äº°ÀÚ´Â 12951À̶ó°í °¡Á¤ÇÕ´Ï´Ù. DISPLAYNAMEÀº 12951ÀÇ Å°·Î »ç¿ëµË´Ï´Ù. ´ÙÀ½ ·¹ÄÚµå, ADDRESS·Î 󸮸¦ °è¼ÓÇÕ´Ï´Ù. ¿©±â¼, ADDRBOOK_ID´Â "@..." ¾ç½ÄÀÔ´Ï´Ù(ÀÌ ¾ç½ÄÀº ºÐ¸®¹®ÀÚ µÚ¿¡ ³ª¿À´Â º¯¼ö°¡ ÁÖ¼Ò·Ï ½Äº°ÀÚ¸¦ ã´Â µ¥ »ç¿ëµÊÀ» ÁöÁ¤ÇÕ´Ï´Ù). ¹®ÀÚ¿Àº DISPLAYNAME°ú ÀÏÄ¡Çϰí, 12951ÀÌ ¸®ÅϵǾî ADDRBOOK_ID ¼Ó¼º¿¡ ¹èÄ¡µË´Ï´Ù.
<MEMBER MEMBER_ID="100" TYPE="U" STATE="1" /> <MEMBER MEMBER_ID="101" TYPE="U" STATE="1" /> <ADDRBOOK ADDRBOOK_ID="12951" »ý¼ºµÈ 1Â÷ Ű MEMBER_ID="100" DISPLAYNAME="Friends" º¯°æµÇÁö ¾ÊÀº ADDRBOOK DISPLAYNAMEÀÇ °ª DESCRIPTION="All my friends" TYPE="P" /> <ADDRESS ADDRESS_ID="13051" »ý¼ºµÈ 1Â÷ Ű ADDRBOOK_ID="12951" ADDRESS´Â ¿Ã¹Ù¸¥ ADDRBOOK ÂüÁ¶ MEMBER_ID="101" NICKNAME="Bob" ADDRESS1="15 Brave Developers St." CITY="Toronto" ZIPCODE="A0A0A0" COUNTRY="Canada" STATUS="P" />
º¹ÇÕ Å°·Î Ư¼º ÆÄÀÏ »ç¿ë
µÑ ÀÌ»óÀÇ ¿·Î ±¸¼ºµÇ´Â ۸¦ º¹ÇÕ Å°¶ó ÇÕ´Ï´Ù. NAMEDELIMITER ¹× SELECTDELIMITER ´ÙÀ½¿¡ Çʵå À̸§À» ÁöÁ¤ÇÏ¿© Ư¼º ÆÄÀÏ¿¡¼ º¹ÇÕ Å° Á¶È¸¸¦ Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. ADDRBOOK ·¹ÄÚµåÀÇ Á¶È¸ ±âÁØÀ» Ç¥½Ã À̸§°ú ±¸¼º¿ø IDÀÇ °áÇÕÀ¸·Î ÁöÁ¤ÇÏ·Á¸é Ư¼º ÆÄÀÏ¿¡ ´ÙÀ½À» ÁöÁ¤ÇϽʽÿÀ.
ADDRBOOK=@DISPLAYNAME@MEMBER_ID:DISPLAYNAME MEMBER_ID
±×·± ´ÙÀ½, ´ÙÀ½ XML ÀÔ·Â ÆÄÀÏ ´Ü¶ôÀ» ¼öÇàÇϽʽÿÀ.
<ADDRBOOK MEMBER_ID="100" DISPLAYNAME="Friends" MEMBER 100ÀÇ "Friends" DESCRIPTION="All my friends" TYPE="P" /> <ADDRBOOK MEMBER_ID="101" DISPLAYNAME="Friends" MEMBER 101ÀÇ ADDRBOOK "Friends" DESCRIPTION="All my friends" TYPE="P" /> <ADDRESS ADDRBOOK_ID="@Friends@100" ADDRBOOKÀÇ 1Â÷ Ű ã±â MEMBER 100ÀÇ ADDRBOOK "Friends" MEMBER_ID="101" NICKNAME="Bob" ADDRESS1="15 Brave Developers St." CITY="Toronto" ZIPCODE="A0A0A0" COUNTRY="Canada" STATUS="P" />
ºÐ¼® ÈÄ ´ÙÀ½°ú °°Àº °á°ú°¡ ³ªÅ¸³³´Ï´Ù.
<MEMBER MEMBER_ID="100" TYPE="U" STATE="1" /> <MEMBER MEMBER_ID="101" TYPE="U" STATE="1" /> <ADDRBOOK ADDRBOOK_ID="12951" °ü½ÉÀÖ´Â ADDRBOOK MEMBER_ID="100" DISPLAYNAME="Friends" DESCRIPTION="All my friends" TYPE="P" /> <ADDRBOOK ADDRBOOK_ID="12952" MEMBER_ID="101" DISPLAYNAME="Friends" DESCRIPTION="All my friends" TYPE="P" /> <ADDRESS ADDRESS_ID="13051" ADDRBOOK_ID="12951" ADDRESS´Â ¿Ã¹Ù¸¥ ADDRBOOK ÂüÁ¶ MEMBER_ID="101" NICKNAME="Bob" ADDRESS1="15 Brave Developers St." CITY="Toronto" ZIPCODE="A0A0A0" COUNTRY="Canada" STATUS="P" />
Áßø 1Â÷ Ű·Î Ư¼º ÆÄÀÏ »ç¿ë
1Â÷ Å×À̺í STOREENT´Â 1Â÷ Ű STOREENT_ID¸¦ Á¤ÀÇÇÕ´Ï´Ù. STOREENT¸¦ ÂüÁ¶ÇÏ´Â foreign Å×À̺íÀÎ STORE´Â 1Â÷ Å×À̺í STOREENT¸¦ ÂüÁ¶ÇÏ´Â foreign keyÀÎ 1Â÷ Ű STORE_ID¸¦ Á¤ÀÇÇÕ´Ï´Ù. Áï, STORE_ID´Â STOREENT_ID °ª Áß Çϳª¿©¾ß ÇÕ´Ï´Ù. µû¶ó¼, foreign Å×À̺í STOREÀÇ 1Â÷ ŰÀÎ STORE_ID´Â µÎ °¡Áö ¿ªÇÒ(primary ¹× foreign)À» ¸ðµÎ °¡Áö°Ô µË´Ï´Ù.
¶Ç ´Ù¸¥ Å×À̺í CONTRACT´Â STOREÀÇ foreign Å×À̺íÀ̸ç, CONTRACTÀÇ foreign keyÀÎ STORE_ID´Â STOREÀÇ 1Â÷ Ű STORE_ID¸¦ ÂüÁ¶ÇÕ´Ï´Ù. µû¶ó¼ STORE Å×À̺íÀº CONTRACT Å×À̺íÀÇ 1Â÷ Å×À̺íÀÌ µË´Ï´Ù.
STORE Å×À̺íÀÇ STORE_ID´Â ÀÛ¼ºµÇÁö ¾Ê°í STOREENT_ID·ÎºÎÅÍ ÂüÁ¶µÇ±â ¶§¹®¿¡, ID ºÐ¼®±â´Â STORE Å×ÀÌºí¿¡ ´ëÇÑ ³»ºÎ º°¸í ¹× ID °ª ¿¬°üÀ» ÀÛ¼ºÇÏÁö ¾Ê½À´Ï´Ù. CONTRACT Å×À̺íÀÌ STORE Å×À̺íÀ» ÅëÇØ STORE_ID¸¦ ºÐ¼®ÇϰíÀÚ ÇÒ °æ¿ì, °ø¹é °ªÀ» °®°Ô µË´Ï´Ù.
ÀÌ·¯ÇÑ Æ¯¼ö Á¶°Ç ¶§¹®¿¡ Ư¼º ÆÄÀÏ¿¡ Ç׸ñÀ» ÀÛ¼ºÇÏ¿© ³»ºÎ º°¸í ÀÛ¼ºÀ» ¸í½ÃÀûÀ¸·Î ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. IdResolveKeys.properties¿¡¼ ´ÙÀ½À» ÁöÁ¤ÇϽʽÿÀ.
"STORE=@STORE_ID:STORE_ID"
±×·¯¸é ID ºÐ¼®±â´Â ´ÙÀ½À» ¼öÇàÇÏ°Ô µË´Ï´Ù.
Ư¼º ÆÄÀÏ¿¡ STORE=@STORE_ID:STORE_ID Ç׸ñÀ» »ç¿ëÇÏ°í ´ÙÀ½ XML ÀÔ·Â ÆÄÀÏ ±¸¹®À» »ç¿ëÇϸé,
<STOREENT IDENTIFIER="Out Fashions" MEMBER_ID="-2000" STOREENT_ID="@storeent_id_1" TYPE="G" /> <STORE STORE_ID="@storeent_id_1" STOREGRP_ID="1" STORELEVEL="store_level" /> <CONTRACT CONTRACT_ID="@contract_id_1" STATE="0" STORE_ID="@storeent_id_1" />
ºÐ¼® ÈÄ ´ÙÀ½°ú °°Àº °á°ú°¡ ³ªÅ¸³³´Ï´Ù.
<STOREENT IDENTIFIER="Out Fashions" MEMBER_ID="-2000" STOREENT_ID="10501" TYPE="G" /> <STORE STORE_ID="10501" STOREGRP_ID="1" STORELEVEL="store_level" /> <CONTRACT CONTRACT_ID="@contract_id_1" STATE="0" STORE_ID="10501" />
![]() |