±à¼ÍƼö: |
±¾ÎÄÀ´×ÔÍøÂ磬±¾ÎĽéÉÜÁËÁìÓòÇý¶¯»ù´¡¸ÅÄÉè¼Æ²½Ö裬·Ö²ãʾÒâͼ£¬
À©Õ¹ËÄÉ«ÔÐÍ·ÖÎöģʽµÈ֪ʶ¡£
|
|
1.1»ù´¡¸ÅÄî
1.1.1ʵÌ壨Entity£©
ʵÌå¾ÍÊÇÁìÓòÖÐÐèҪΨһ±êʶµÄÁìÓò¸ÅÄî¡£ÒòΪÎÒÃÇÓÐʱÐè񻂿·ÖÊÇÄĸöʵÌå¡£ÓÐÁ½¸öʵÌ壬Èç¹ûΨһ±êʶ²»Ò»Ñù£¬ÄÇô¼´±ãʵÌåµÄÆäËûËùÓÐÊôÐÔ¶¼Ò»Ñù£¬ÎÒÃÇÒ²ÈÏΪËûÃÇÁ½¸ö²»Í¬µÄʵÌ壻ÒòΪʵÌåÓÐÉúÃüÖÜÆÚ£¬ÊµÌå´Ó±»´´½¨ºó¿ÉÄܻᱻ³Ö¾Ã»¯µ½Êý¾Ý¿â£¬È»ºóij¸öʱºòÓֻᱻȡ³öÀ´¡£ËùÒÔ£¬Èç¹ûÎÒÃDz»ÎªÊµÌ嶨ÒåÒ»ÖÖ¿ÉÒÔÎ¨Ò»Çø·ÖµÄ±êʶ£¬ÄÇÎÒÃǾÍÎÞ·¨Çø·Öµ½µ×ÊÇÕâ¸öʵÌ廹ÊÇÄĸöʵÌå¡£ÁíÍ⣬²»Ó¦¸Ã¸øÊµÌ嶨ÒåÌ«¶àµÄÊôÐÔ»òÐÐΪ£¬¶øÓ¦¸ÃѰÕÒ¹ØÁª£¬·¢ÏÖÆäËûһЩʵÌå»òÖµ¶ÔÏ󣬽«ÊôÐÔ»òÐÐÎª×ªÒÆµ½ÆäËû¹ØÁªµÄʵÌå»òÖµ¶ÔÏóÉÏ¡£±ÈÈçCustomerʵÌ壬ËûÓÐһЩµØÖ·ÐÅÏ¢£¬ÓÉÓÚµØÖ·ÐÅÏ¢ÊÇÒ»¸öÍêÕûµÄÓÐÒµÎñº¬ÒåµÄ¸ÅÄËùÒÔ£¬ÎÒÃÇ¿ÉÒÔ¶¨ÒåÒ»¸öAddress¶ÔÏó£¬È»ºó°ÑCustomerµÄµØÖ·Ïà¹ØµÄÐÅÏ¢×ªÒÆµ½Address¶ÔÏóÉÏ¡£Èç¹ûûÓÐAddress¶ÔÏ󣬶ø°ÑÕâЩµØÖ·ÐÅÏ¢Ö±½Ó·ÅÔÚCustomer¶ÔÏóÉÏ£¬²¢ÇÒÈç¹û¶ÔÓÚһЩÆäËûµÄÀàËÆAddressµÄÐÅÏ¢Ò²¶¼Ö±½Ó·ÅÔÚCustomerÉÏ£¬»áµ¼ÖÂCustomer¶ÔÏóºÜ»ìÂÒ£¬½á¹¹²»ÇåÎú£¬×îÖÕµ¼ÖÂËüÄÑÒÔά»¤ºÍÀí½â¡£
1.1.2 Öµ¶ÔÏó£¨Value Object£©
ÔÚÁìÓòÖУ¬²¢²»ÊÇÿһ¸öÊÂÎï¶¼±ØÐëÓÐÒ»¸öΨһ±êʶ£¬Ò²¾ÍÊÇ˵ÎÒÃDz»¹ØÐĶÔÏóÊÇÄĸö£¬¶øÖ»¹ØÐĶÔÏóÊÇʲô¡£¾ÍÒÔÉÏÃæµÄµØÖ·¶ÔÏóAddressΪÀý£¬Èç¹ûÓÐÁ½¸öCustomerµÄµØÖ·ÐÅÏ¢ÊÇÒ»ÑùµÄ£¬ÎÒÃǾͻáÈÏΪÕâÁ½¸öCustomerµÄµØÖ·ÊÇͬһ¸ö¡£Ò²¾ÍÊÇ˵ֻҪµØÖ·ÐÅÏ¢Ò»Ñù£¬ÎÒÃǾÍÈÏΪÊÇͬһ¸öµØÖ·¡£ÓóÌÐòµÄ·½Ê½À´±í´ï¾ÍÊÇ£¬Èç¹ûÁ½¸ö¶ÔÏóµÄËùÓеÄÊôÐÔµÄÖµ¶¼ÏàͬÎÒÃÇ»áÈÏΪËüÃÇÊÇͬһ¸ö¶ÔÏóµÄ»°£¬ÄÇôÎÒÃǾͿÉÒÔ°ÑÕâÖÖ¶ÔÏóÉè¼ÆÎªÖµ¶ÔÏó¡£Òò´Ë£¬Öµ¶ÔÏóûÓÐΨһ±êʶ£¬ÕâÊÇËüºÍʵÌåµÄ×î´ó²»Í¬¡£ÁíÍâÖµ¶ÔÏóÔÚÅжÏÊÇ·ñÊÇͬһ¸ö¶ÔÏóʱÊÇͨ¹ýËüÃǵÄËùÓÐÊôÐÔÊÇ·ñÏàͬ£¬Èç¹ûÏàͬÔòÈÏΪÊÇͬһ¸öÖµ¶ÔÏó£»¶øÎÒÃÇÔÚÇø·ÖÊÇ·ñÊÇͬһ¸öʵÌåʱ£¬Ö»¿´ÊµÌåµÄΨһ±êʶÊÇ·ñÏàͬ£¬¶ø²»¹ÜʵÌåµÄÊôÐÔÊÇ·ñÏàͬ£»Öµ¶ÔÏóÁíÍâÒ»¸öÃ÷ÏÔµÄÌØÕ÷ÊDz»¿É±ä£¬¼´ËùÓÐÊôÐÔ¶¼ÊÇÖ»¶ÁµÄ¡£ÒòΪÊôÐÔÊÇÖ»¶ÁµÄ£¬ËùÒÔ¿ÉÒÔ±»°²È«µÄ¹²Ïí£»ÁíÍ⣬ÎÒÃÇÓ¦¸Ã¸øÖµ¶ÔÏóÉè¼ÆµÄ¾¡Á¿¼òµ¥£¬²»ÒªÈÃËüÒýÓúܶàÆäËûµÄ¶ÔÏó£¬ÒòΪËûÖ»ÊÇÒ»¸öÖµ£¬¾ÍÏñint
a = 3;ÄÇô¡±3¡±¾ÍÊÇÒ»¸öÎÒÃÇ´«Í³ÒâÒåÉÏËù˵µÄÖµ£¬¶øÖµ¶ÔÏóÆäʵҲ¿ÉÒÔºÍÕâÀïµÄ¡±3¡±Ò»ÑùÀí½â£¬Ò²ÊÇÒ»¸öÖµ£¬Ö»²»¹ýÊÇÓöÔÏóÀ´±íʾ¡£ËùÒÔ£¬µ±ÎÒÃÇÔÚjavaÓïÑÔÖбȽÏÁ½¸öÖµ¶ÔÏóÊÇ·ñÏàµÈʱ£¬»áÖØÐ´hashCodeºÍequalsÕâÁ½¸ö·½·¨£¬Ä¿µÄ¾ÍÊÇΪÁ˱Ƚ϶ÔÏóµÄÖµ£»Öµ¶ÔÏóËäÈ»ÊÇÖ»¶ÁµÄ£¬µ«ÊÇ¿ÉÒÔ±»Õû¸öÌæ»»µô¡£¾ÍÏñÄã°ÑaµÄÖµÐÞ¸ÄΪ¡±4¡±(a
= 4;)Ò»Ñù£¬Ö±½Ó°Ñ¡±3¡±Õâ¸öÖµÌæ»»Îª¡±4¡±ÁË¡£Öµ¶ÔÏóÒ²ÊÇÒ»Ñù£¬µ±ÄãÒªÐÞ¸ÄCustomerµÄAddress¶ÔÏóÒýÓÃʱ£¬²»ÊÇͨ¹ýCustomer.Address.StreetÕâÑùµÄ·½Ê½À´ÊµÏÖ£¬ÒòΪֵ¶ÔÏóÊÇÖ»¶ÁµÄ£¬ËüÊÇÒ»¸öÍêÕûµÄ²»¿É·Ö¸îµÄÕûÌå¡£ÎÒÃÇ¿ÉÒÔÕâÑù×ö£ºCustomer.Address
= new Address(¡);
1.1.3 ¾ÛºÏ£¨ÒÔ¼°¾ÛºÏ¸ù£©
¾ÛºÏ±íʾһ×éÁìÓò¶ÔÏó(°üÀ¨ÊµÌåºÍÖµ¶ÔÏó)£¬ÓÃÀ´±íÊöÒ»¸öÍêÕûµÄÁìÓò¸ÅÄî¡£¶øÃ¿¸ö¾ÛºÏ¶¼ÓÐÒ»¸ö¸ùʵÌ壬Õâ¸ö¸ùʵÌåÓÖ½Ð×ö¾ÛºÏ¸ù¡£¾Ù¸ö¼òµ¥µÄÀý×Ó£¬Ò»¸öµçÄÔ°üº¬Ó²ÅÌ¡¢CPU¡¢ÄÚ´æÌõµÈ£¬ÕâÒ»¸ö×éºÏ¾ÍÊÇÒ»¸ö¾ÛºÏ£¬¶øµçÄÔ¾ÍÊÇÕâ¸ö×éºÏµÄ¾ÛºÏ¸ù¡£
1.1.4 ÁìÓò·þÎñ£¨Domain Service£©
ÁìÓòÖеÄһЩ¸ÅÄ̫ÊʺϽ¨Ä£Îª¶ÔÏ󣬼´¹éÀൽʵÌå¶ÔÏó»òÖµ¶ÔÏó£¬ÒòΪËüÃDZ¾ÖÊÉϾÍÊÇһЩ²Ù×÷£¬Ò»Ð©¶¯×÷£¬¶ø²»ÊÇÊÂÎï¡£ÕâЩ²Ù×÷»ò¶¯×÷ÍùÍù»áÉæ¼°µ½¶à¸öÁìÓò¶ÔÏ󣬲¢ÇÒÐèҪе÷ÕâЩÁìÓò¶ÔÏó¹²Í¬Íê³ÉÕâ¸ö²Ù×÷»ò¶¯×÷¡£Èç¹ûÇ¿Ðн«ÕâЩ²Ù×÷Ö°Ôð·ÖÅ䏸ÈκÎÒ»¸ö¶ÔÏó£¬Ôò±»·ÖÅäµÄ¶ÔÏó¾ÍÊdzе£Ò»Ð©²»¸Ã³Ðµ£µÄÖ°Ô𣬴Ӷø»áµ¼Ö¶ÔÏóµÄÖ°Ôð²»Ã÷È·ºÜ»ìÂÒ¡£µ«ÊÇ»ùÓÚÀàµÄÃæÏò¶ÔÏóÓïÑԹ涨ÈκÎÊôÐÔ»òÐÐΪ¶¼±ØÐë·ÅÔÚ¶ÔÏóÀïÃæ¡£ËùÒÔÎÒÃÇÐèҪѰÕÒÒ»ÖÖеÄģʽÀ´±íʾÕâÖÖ¿ç¶à¸ö¶ÔÏóµÄ²Ù×÷£¬DDDÈÏΪ·þÎñÊÇÒ»¸öºÜ×ÔÈ»µÄ·¶Ê½ÓÃÀ´¶ÔÓ¦ÕâÖÖ¿ç¶à¸ö¶ÔÏóµÄ²Ù×÷£¬ËùÒÔ¾ÍÓÐÁËÁìÓò·þÎñÕâ¸öģʽ¡£ºÍÁìÓò¶ÔÏó²»Í¬£¬ÁìÓò·þÎñÊÇÒÔ¶¯´Ê¿ªÍ·À´ÃüÃûµÄ£¬±ÈÈç×ʽðתÕÊ·þÎñ¿ÉÒÔÃüÃûΪMoneyTransferService¡£µ±È»£¬ÄãÒ²¿ÉÒÔ°Ñ·þÎñÀí½âΪһ¸ö¶ÔÏ󣬵«ÕâºÍÒ»°ãÒâÒåÉϵĶÔÏóÓÐÐ©Çø±ð¡£ÒòΪһ°ãµÄÁìÓò¶ÔÏó¶¼ÊÇÓÐ״̬ºÍÐÐΪµÄ£¬¶øÁìÓò·þÎñûÓÐ״ֻ̬ÓÐÐÐΪ¡£ÐèҪǿµ÷µÄÊÇÁìÓò·þÎñÊÇÎÞ״̬µÄ£¬Ëü´æÔÚµÄÒâÒå¾ÍÊÇе÷ÁìÓò¶ÔÏó¹²Íê³Éij¸ö²Ù×÷£¬ËùÓеÄ״̬»¹ÊǶ¼±£´æÔÚÏàÓ¦µÄÁìÓò¶ÔÏóÖС£Ä£ÐÍ£¨ÊµÌ壩Óë·þÎñ£¨³¡¾°£©ÊǶÔÁìÓòµÄÒ»ÖÖ»®·Ö£¬Ä£Ð͹Ø×¢ÁìÓòµÄ¸öÌåÐÐΪ£¬³¡¾°¹Ø×¢ÁìÓòµÄȺÌåÐÐΪ£¬Ä£Ð͹Ø×¢ÁìÓòµÄ¾²Ì¬½á¹¹£¬³¡¾°¹Ø×¢ÁìÓòµÄ¶¯Ì¬¹¦ÄÜ¡£ÕâÒ²·ûºÏÁËÏÖʵÖгöÏֵĸ÷ÖÖÏÖÏó£¬Óж¯Óо²£¬ÓжÀÁ¢ÓÐÐ×÷¡£
ÁìÓò·þÎñ»¹ÓÐÒ»¸öºÜÖØÒªµÄ¹¦ÄܾÍÊÇ¿ÉÒÔ±ÜÃâÁìÓòÂ߼й¶µ½Ó¦Óò㡣ÒòΪÈç¹ûûÓÐÁìÓò·þÎñ£¬ÄÇôӦÓòã»áÖ±½Óµ÷ÓÃÁìÓò¶ÔÏóÍê³É±¾¸ÃÊÇÊôÓÚÁìÓò·þÎñ¸Ã×öµÄ²Ù×÷£¬ÕâÑùÒ»À´£¬ÁìÓò²ã¿ÉÄÜ»á°ÑÒ»²¿·ÖÁìÓò֪ʶй¶µ½Ó¦Óò㡣ÒòΪӦÓòãÐèÒªÁ˽âÿ¸öÁìÓò¶ÔÏóµÄÒµÎñ¹¦ÄÜ£¬¾ßÓÐÄÄЩÐÅÏ¢£¬ÒÔ¼°Ëü¿ÉÄÜ»áÓëÄÄЩÆäËûÁìÓò¶ÔÏó½»»¥£¬Ôõô½»»¥µÈһϵÁÐÁìÓò֪ʶ¡£Òò´Ë£¬ÒýÈëÁìÓò·þÎñ¿ÉÒÔÓÐЧµÄ·ÀÖÎÁìÓò²ãµÄÂ߼й¶µ½Ó¦Óò㡣¶ÔÓÚÓ¦ÓòãÀ´Ëµ£¬´Ó¿ÉÀí½âµÄ½Ç¶ÈÀ´½²£¬Í¨¹ýµ÷ÓÃÁìÓò·þÎñÌṩµÄ¼òµ¥Ò×¶®µ«ÒâÒåÃ÷È·µÄ½Ó¿Ú¿Ï¶¨Ò²Òª±ÈÖ±½Ó²Ù×ÝÁìÓò¶ÔÏóÈÝÒ׵ĶࡣÕâÀïËÆºõÒ²¿´µ½ÁËÁìÓò·þÎñ¾ßÓÐFa?ade[f??s¨»:d]µÄ¹¦ÄÜ¡£
1.1.5 ²Ö´¢
ÁìÓòÄ£ÐÍÖеĶÔÏó×Ô´Ó±»´´½¨³öÀ´ºó²»»áÒ»Ö±ÁôÔÚÄÚ´æÖлµÄ£¬µ±Ëü²»»î¶¯Ê±»á±»³Ö¾Ã»¯µ½Êý¾Ý¿âÖУ¬È»ºóµ±ÐèÒªµÄʱºòÎÒÃÇ»áÖØ½¨¸Ã¶ÔÏó£»Öؽ¨¶ÔÏó¾ÍÊǸù¾ÝÊý¾Ý¿âÖÐÒÑ´æ´¢µÄ¶ÔÏóµÄ×´Ì¬ÖØÐ´´½¨¶ÔÏóµÄ¹ý³Ì£»ËùÒÔ£¬¿É¼ûÖØ½¨¶ÔÏóÊÇÒ»¸öºÍÊý¾Ý¿â´ò½»µÀµÄ¹ý³Ì¡£´Ó¸ü¹ãÒåµÄ½Ç¶ÈÀ´Àí½â£¬ÎÒÃǾ³£»áÏñ¼¯ºÏÒ»Ñù´Óij¸öÀàËÆ¼¯ºÏµÄµØ·½¸ù¾Ýij¸öÌõ¼þ»ñȡһ¸ö»òһЩ¶ÔÏó£¬Íù¼¯ºÏÖÐÌí¼Ó¶ÔÏó»òÒÆ³ý¶ÔÏó¡£Ò²¾ÍÊÇ˵£¬ÎÒÃÇÐèÒªÌṩһÖÖ»úÖÆ£¬¿ÉÒÔÌṩÀàËÆ¼¯ºÏµÄ½Ó¿Ú(crud)À´°ïÖúÎÒÃǹÜÀí¶ÔÏó¡£²Ö´¢¾ÍÊÇ»ùÓÚÕâÑùµÄ˼Ïë±»Éè¼Æ³öÀ´µÄ£»
²Ö´¢ÀïÃæ´æ·ÅµÄ¶ÔÏóÒ»¶¨ÊǾۺϣ¬ÔÒòÊÇ֮ǰÌáµ½µÄÁìÓòÄ£ÐÍÖÐÊÇÒԾۺϵĸÅÄîÈ¥»®·Ö±ß½çµÄ£»¾ÛºÏÊÇÎÒÃǸüжÔÏóµÄÒ»¸ö±ß½ç£¬ÊÂʵÉÏÎÒÃǰÑÕû¸ö¾ÛºÏ¿´³ÉÊÇÒ»¸öÕûÌå¸ÅÄҪôһÆð±»È¡³öÀ´£¬ÒªÃ´Ò»Æð±»É¾³ý¡£ÎÒÃÇÓÀÔ¶²»»áµ¥¶À¶Ôij¸ö¾ÛºÏÄÚµÄ×Ó¶ÔÏó½øÐе¥¶À²éѯ»ò×ö¸üвÙ×÷¡£Òò´Ë£¬ÎÒÃÇÖ»¶Ô¾ÛºÏÉè¼Æ²Ö´¢¡£
²Ö´¢»¹ÓÐÒ»¸öÖØÒªµÄÌØÕ÷¾ÍÊÇ·ÖΪ²Ö´¢¶¨Ò岿·ÖºÍ²Ö´¢ÊµÏÖ²¿·Ö£¬ÔÚÁìÓòÄ£ÐÍÖÐÎÒÃǶ¨Òå²Ö´¢µÄ½Ó¿Ú£¬¶øÔÚ»ù´¡ÉèÊ©²ãʵÏÖ¾ßÌåµÄ²Ö´¢¡£ÕâÑù×öµÄÔÒòÊÇ£ºÓÉÓÚ²Ö´¢±³ºóµÄʵÏÖ¶¼ÊÇÔÚºÍÊý¾Ý¿â´ò½»µÀ£¬µ«ÊÇÎÒÃÇÓÖ²»Ï£Íû¿Í»§£¨ÈçÓ¦Óò㣩°ÑÖØµã·ÅÔÚÈçºÎ´ÓÊý¾Ý¿â»ñÈ¡Êý¾ÝµÄÎÊÌâÉÏ£¬ÒòΪÕâÑù×ö»áµ¼Ö¿ͻ§£¨Ó¦Óò㣩´úÂëºÜ»ìÂÒ£¬ºÜ¿ÉÄÜ»áÒò´Ë¶øºöÂÔÁËÁìÓòÄ£Ð͵ĴæÔÚ¡£ËùÒÔÎÒÃÇÐèÒªÌṩһ¸ö¼òµ¥Ã÷Á˵Ľӿڣ¬¹©¿Í»§Ê¹Óã¬È·±£¿Í»§ÄÜÒÔ×î¼òµ¥µÄ·½Ê½»ñÈ¡ÁìÓò¶ÔÏ󣬴Ӷø¿ÉÒÔÈÃËüרÐĵIJ»»á±»Ê²Ã´Êý¾Ý·ÃÎÊ´úÂë´òÈŵÄÇé¿öÏÂе÷ÁìÓò¶ÔÏóÍê³ÉÒµÎñÂß¼¡£ÕâÖÖͨ¹ý½Ó¿ÚÀ´¸ôÀë·â×°±ä»¯µÄ×ö·¨ÆäʵºÜ³£¼û¡£ÓÉÓÚ¿Í»§Ãæ¶ÔµÄÊdzéÏóµÄ½Ó¿Ú²¢²»ÊǾßÌåµÄʵÏÖ£¬ËùÒÔÎÒÃÇ¿ÉÒÔËæÊ±Ìæ»»²Ö´¢µÄÕæÊµÊµÏÖ£¬ÕâºÜÓÐÖúÓÚÎÒÃÇ×öµ¥Ôª²âÊÔ¡£
1.1.6 CQRS
ÔÚʵ¼ÊµÄÏîÄ¿ÖУ¬ÓÐЩʱºò²Ö´¢²¢²»ÄܸßЧÂʵÄÍê³ÉÊý¾ÝµÄ»ñÈ¡ÐèÇó£¬ÀýÈçÔÚËÑË÷Ò³ÃæÖУ¬¸ù¾Ý¸÷ÖÖËÑË÷Ìõ¼þ(Éæ¼°¶à¸öÁìÓò¶ÔÏó)½øÐÐÁбíµÄ²éѯɸѡµÄʱºò£¬ÈÔȻͨ¹ýÓ¦ÓÃ-(ÁìÓò)-ÁìÓò¶ÔÏó-²Ö´¢µÄ·½Ê½½øÐвéѯ£¬ÏÔÈ»ÓÐЩ¸´ÔÓ²¢ÇÒЧÂÊÊDz»¸ßµÄ£¬¶øÇÒ²¢²»ÄÜÇå³þµÄ»®·Öµ½Ä³¸öÁìÓòÖ®ÖС£
CQRSºËÐÄ˼ÏëÊǽ«Ó¦ÓóÌÐòµÄ²éѯ²¿·ÖºÍÃüÁ·ÖÍêÈ«·ÖÀ룬ÕâÁ½²¿·Ö¿ÉÒÔÓÃÍêÈ«²»Í¬µÄÄ£Ðͺͼ¼ÊõȥʵÏÖ¡£±ÈÈçÃüÁ·Ö¿ÉÒÔͨ¹ýÁìÓòÇý¶¯Éè¼ÆÀ´ÊµÏÖ£»²éѯ²¿·Ö¿ÉÒÔÖ±½ÓÓÃ×î¿ìµÄ·ÇÃæÏò¶ÔÏóµÄ·½Ê½È¥ÊµÏÖ£¬±ÈÈçÓÃSQL¡£ÕâÑùµÄ˼ÏëÓкܶàºÃ´¦£º
1. ʵÏÖÃüÁ·ÖµÄÁìÓòÄ£ÐͲ»Óþ³£ÎªÁËÁìÓò¶ÔÏó¿ÉÄܻᱻÈçºÎ²éѯ¶ø×öһЩÕÛÖд¦Àí£»
2. ÓÉÓÚÃüÁîºÍ²éѯÊÇÍêÈ«·ÖÀëµÄ£¬ËùÒÔÕâÁ½²¿·Ö¿ÉÒÔÓò»Í¬µÄ¼¼Êõ¼Ü¹¹ÊµÏÖ£¬°üÀ¨Êý¾Ý¿âÉè¼Æ¶¼¿ÉÒÔ·Ö¿ªÉè¼Æ£¬Ã¿Ò»²¿·Ö¿ÉÒÔ³ä·Ö·¢»ÓÆä³¤´¦£»
3. ¸ßÐÔÄÜ£¬ÃüÁî¶ËÒòΪûÓзµ»ØÖµ£¬¿ÉÒÔÏñÏûÏ¢¶ÓÁÐÒ»Ñù½ÓÊÜÃüÁ·ÅÔÚ¶ÓÁÐÖУ¬ÂýÂý´¦Àí£»´¦ÀíÍêºó£¬¿ÉÒÔͨ¹ýÒì²½µÄ·½Ê½Í¨Öª²éѯ¶Ë£¬ÕâÑù²éѯ¶Ë¿ÉÒÔ×öÊý¾Ýͬ²½µÄ´¦Àí£»
1.1.7Ó¦Ó÷þÎñ
Ó¦Ó÷þÎñ±¾Éí²¢²»´¦ÀíÂß¼£¬µ«ËüÈ´ÊÇÁìÓòÄ£Ð͵ÄÖ±½Ó¿Í»§£¬Ó¦Ó÷þÎñ¿ÉÒÔÓÃÓÚ¿ØÖƳ־û¯ÊÂÎñ£¬»òÕßÏòÆäËüϵͳ·¢ËÍ»ùÓÚʼþµÄÏûÏ¢¡£ÁìÓòÂß¼ÊDz»Ó¦¸Ã³öÏÖÔÚÓ¦Ó÷þÎñÖеġ£ËûÖ÷ÒªÓÃÓÚе÷ÁìÓò²ãµÄ²Ù×÷¡£
1.1.8 ÁìÓòʼþ
ÔÚ´«Í³ÏîÄ¿¼Ü¹¹ÖУ¬´ó¶àÊÇͨ¹ý×éºÏµÄ·½Ê½£¬½øÐÐÏûÏ¢´«µÝ£¬ÕâÑù×öºÜ·½±ã£¬µ«ÊÇȴʹ¶ÔÏóÖ®¼äµÄñîºÏÐÔÔöÇ¿ÁË¡£ÀýÈ磺µ±User´´½¨Íê³Éºó£¬ÐèҪΪÆä´´½¨¶ÔÓ¦µÄcart[k¨»?t]ÐÅÏ¢£¬Í¨³£ÔÚuserServiceÖаüº¬ÁËcart£¬´´½¨Óû§Íê³Éºó£¬µ÷ÓÃcartServiceµÄ´´½¨cart·½·¨¡£ÕâÑùÒ»µ©ÐÞ¸ÄÁËcartServiceµÄcreateCart·½·¨£¬½«»áÓ°Ïìµ½userService¡£
ÁìÓòÇý¶¯Éè¼ÆÖУ¬²ÉÓÃÁìÓòʼþ(·¢²¼-¶©ÔÄ)µÄ·½Ê½À´½â¾öÕâ¸öÎÊÌâ¡£µ±Óû§´´½¨Íê³Éºó£¬·¢²¼Ò»¸ö֪ͨ£¬¶øcart»á¶©ÔĸÃÏûϢ֪ͨ£¬²¢½øÐÐ×Ô¼ºµÄ´¦Àí¡£User²¢²»ÐèÒªÖªµÀcartµÄ¾ßÌå´´½¨·½·¨¡£
Spring¿ò¼ÜÌṩÁËʼþ֪ͨ»úÖÆµÄ¹¦ÄÜ£¬Í¨³£Ê¹ÓÃ@TransactionEventListener×¢½âµÄ·½Ê½½øÐпª·¢¡£
1.1.9 ƶѪģÐÍ
´«Í³ÏîÄ¿ÖеÄÐÅÏ¢Ìå(DO,DTO,PO¡)ÖУ¬Í¨³£°üº¬setter,getter·½·¨£¬ÕâÑù×ö²¢²»·ûºÏÃæÏò¶ÔÏóµÄÉè¼Æ¡£ÊÔÏ룬µ÷ÓÃûÓÐÈκÎÂß¼µÄsetÓëget·½·¨£¬ÓëÖ±½Ó²Ù×÷¶ÔÏóµÄÊôÐÔ(public)ÓÖÓÐÊ²Ã´Çø±ðÄØ£¿setter/getterÖ»ÊÇÒ»ÖÖ·½±ã¸³ÖµÈ´Ã»ÓÐÈκÎÒâÒåµÄÐÐΪ¡£(¸³Öµ²Ù×÷¸ü¼ÓÍÆ¼öʹÓÃbuilderģʽ)
1.2 Éè¼Æ²½Öè
¸ù¾ÝÐèÇó½¨Á¢Ò»¸ö³õ²½µÄÁìÓòÄ£ÐÍ£¬Ê¶±ð³öһЩÃ÷ÏÔµÄÁìÓò¸ÅÄîÒÔ¼°ËüÃǵĹØÁª£¬¹ØÁª¿ÉÒÔÔÝʱûÓз½Ïòµ«ÐèÒªÓУ¨1£º1£¬1£ºN£¬M£ºN£©ÕâЩ¹ØÏµ£»¿ÉÒÔÓÃÎÄ×Ö¾«È·µÄûÓÐÆçÒåµÄÃèÊö³öÿ¸öÁìÓò¸ÅÄîµÄºÒåÒÔ¼°°üº¬µÄÖ÷ÒªÐÅÏ¢£»
·ÖÎöÖ÷ÒªµÄÈí¼þÓ¦ÓóÌÐò¹¦ÄÜ£¬Ê¶±ð³öÖ÷ÒªµÄÓ¦ÓòãµÄÀࣻÕâÑùÓÐÖúÓÚ¼°Ôç·¢ÏÖÄÄЩÊÇÓ¦ÓòãµÄÖ°Ôð£¬ÄÄЩÊÇÁìÓò²ãµÄÖ°Ôð£»
½øÒ»²½·ÖÎöÁìÓòÄ£ÐÍ£¬Ê¶±ð³öÄÄЩÊÇʵÌ壬ÄÄЩÊÇÖµ¶ÔÏó£¬ÄÄЩÊÇÁìÓò·þÎñ£»
·ÖÎö¹ØÁª£¬Í¨¹ý¶ÔÒµÎñµÄ¸üÉîÈë·ÖÎöÒÔ¼°¸÷ÖÖÈí¼þÉè¼ÆÔÔò¼°ÐÔÄÜ·½ÃæµÄȨºâ£¬Ã÷È·¹ØÁªµÄ·½Ïò»òÕßÈ¥µôһЩ²»ÐèÒªµÄ¹ØÁª£»
ÕÒ³ö¾ÛºÏ±ß½ç¼°¾ÛºÏ¸ù£¬ÕâÊÇÒ»¼þºÜÓÐÄѶȵÄÊÂÇ飻ÒòΪÄãÔÚ·ÖÎöµÄ¹ý³ÌÖÐÍùÍù»áÅöµ½ºÜ¶àÄ£ÀâÁ½¿ÉµÄÄÑÒÔÇåÎúÅжϵÄÑ¡ÔñÎÊÌ⣬ËùÒÔ£¬ÐèÒªÎÒÃÇÆ½Ê±Ò»Ð©·ÖÎö¾ÑéµÄ»ýÀÛ²ÅÄÜÕÒ³öÕýÈ·µÄ¾ÛºÏ¸ù£»
Ϊ¾ÛºÏ¸ùÅ䱸²Ö´¢£¬Ò»°ãÇé¿öÏÂÊÇΪһ¸ö¾ÛºÏ·ÖÅäÒ»¸ö²Ö´¢£¬´ËʱֻҪÉè¼ÆºÃ²Ö´¢µÄ½Ó¿Ú¼´¿É£»
×߲鳡¾°£¬È·¶¨ÎÒÃÇÉè¼ÆµÄÁìÓòÄ£ÐÍÄܹ»ÓÐЧµØ½â¾öÒµÎñÐèÇó£»
¿¼ÂÇÈçºÎ´´½¨ÁìÓòʵÌå»òÖµ¶ÔÏó£¬ÊÇͨ¹ý¹¤³§»¹ÊÇÖ±½Óͨ¹ý¹¹Ô캯Êý£»
Í£ÏÂÀ´Öع¹Ä£ÐÍ¡£Ñ°ÕÒÄ£ÐÍÖоõµÃÓÐЩÒÉÎÊ»òÕßÊÇõ¿½ÅµÄµØ·½£¬±ÈÈç˼¿¼Ò»Ð©¶ÔÏóÓ¦¸Ãͨ¹ý¹ØÁªµ¼º½µÃµ½»¹ÊÇÓ¦¸Ã´Ó²Ö´¢»ñÈ¡£¿¾ÛºÏÉè¼ÆµÄÊÇ·ñÕýÈ·£¿¿¼ÂÇÄ£Ð͵ÄÐÔÄÜÔõÑù£¬µÈµÈ£»
ÁìÓò½¨Ä£ÊÇÒ»¸ö²»¶ÏÖØ¹¹£¬³ÖÐøÍêÉÆÄ£Ð͵Ĺý³Ì£¬´ó¼Ò»áÔÚÌÖÂÛÖн«±ä»¯µÄ²¿·Ö·´Ó³µ½Ä£ÐÍÖУ¬´Ó¶øÊÇÄ£ÐͲ»¶Ïϸ»¯²¢³¯ÕýÈ·µÄ·½Ïò×ß¡£ÁìÓò½¨Ä£ÊÇÁìÓòר¼Ò¡¢Éè¼ÆÈËÔ±¡¢¿ª·¢ÈËÔ±Ö®¼ä¹µÍ¨½»Á÷µÄ¹ý³Ì£¬ÊÇ´ó¼Ò¹¤×÷ºÍ˼¿¼ÎÊÌâµÄ»ù´¡¡£
1.3 ·Ö²ãʾÒâͼ

1.4 À©Õ¹
ËÄÉ«ÔÐÍ·ÖÎöģʽ
l ʱ¿Ì-ʱ¼ä¶ÎÔÐÍ£¨Moment-Interval Archetype£©
±íʾÔÚij¸öʱ¿Ì»òijһ¶Îʱ¼äÄÚ·¢ÉúµÄij¸ö»î¶¯¡£Ê¹Ó÷ۺìÉ«±íʾ£¬¼òдΪMI¡£
l ²ÎÓë·½-µØµã-ÎïÆ·ÔÐÍ£¨Part-Place-Thing Archetype£©
±íʾ²ÎÓëij¸ö»î¶¯µÄÈË»òÎµØµãÔòÊǻµÄ·¢ÉúµØ¡£Ê¹ÓÃÂÌÉ«±íʾ¡£¼òдΪPPT¡£
l ÃèÊöÔÐÍ£¨Description Archetype£©
±íʾ¶ÔPPTµÄ±¾ÖÊÃèÊö¡£Ëü²»ÊÇPPTµÄ·ÖÀ࣡DescriptionÊÇ´ÓPPT³éÏó³öÀ´µÄ²»±äµÄ¹²ÐÔµÄÊôÐԵļ¯ºÏ¡£Ê¹ÓÃÀ¶É«±íʾ£¬¼òдΪDESC¡£
¾Ù¸öÀý×Ó£¬ÓÐÒ»¸öÈ˽ÐÕÅÈý£¬Èç¹ûij¸öÍâÐÇÈËÎÊÄãÕÅÈýÊÇʲô£¿Äã»áÔõô˵£¿¿ÉÄÜ»á˵£¬ÕÅÈýÊǸöÈË£¬µ«ÊÇÍâÐÇÈ˲»ÖªµÀ¡°ÈË¡±ÊÇʲô¡£È»ºóÄã»áÔõô°ì£¿Äã¾Í»á˵£ºÕÅÈýÊǸöÓÉÒ»¸öÍ·¡¢Á½Ö»ÊÖ¡¢Á½Ö»½Å£¬ÒÔ¼°Ò»¸öÉíÌå×é³ÉµÄ¿Í¹Û´æÔÚ¡£ËäÈ»ÕâʱÍâÐÇÈËÈÔÈ»²»ÖªµÀÈËÊÇʲô£¬µ«ÎÒÒѾ¿ÉÒÔ½èÓÃÕâ¸öÀý×ÓÏò´ó¼Ò˵Ã÷ʲôÊÇ¡°Description¡±ÁË¡£ÔÚÕâ¸öÀý×ÓÖУ¬ÕÅÈý¾ÍÊÇÒ»¸öPPT£¬¶ø¡°ÓÉÒ»¸öÍ·¡¢Á½Ö»ÊÖ¡¢Á½Ö»½Å£¬ÒÔ¼°Ò»¸öÉíÌå×é³ÉµÄ¿Í¹Û´æÔÚ¡±¾ÍÊǶÔÕÅÈýµÄDescription£¬Í·¡¢ÊÖ¡¢½Å¡¢ÉíÌåÔòÊÇÈ˵ı¾ÖʵIJ»±äµÄ¹²ÐÔµÄÊôÐԵļ¯ºÏ¡£µ«ÎÒÃÇÈËÀà±È½Ï´ÏÃ÷£¬ºÜ»á³éÏó×ܽáºÍÃüÃû£¬ÒѾ°ÑÕâ¸öDescriptionÓÃÒ»¸ö×ÖÀ´´úÌæÁË£¬ÄǾÍÊÇ¡°ÈË¡±¡£ËùÒÔ¾ÍÓÐËùνµÄÕÅÈýÊÇÈ˵Ä˵·¨¡£
l ½ÇÉ«ÔÐÍ£¨Role Archetype£©
½ÇÉ«¾ÍÊÇÎÒÃÇÆ½Ê±ËùÀí½âµÄ¡°Éí·Ý¡±¡£Ê¹ÓûÆÉ«±íʾ£¬¼òдΪRole¡£ÎªÊ²Ã´»áÓнÇÉ«Õâ¸ö¸ÅÄÒòΪÓÐЩ»î¶¯£¬Ö»ÔÊÐí¾ßÓÐÌØ¶¨½ÇÉ«£¨Éí·Ý£©µÄPPT£¨²ÎÓëÕߣ©²ÅÄܲÎÓë¸Ã»î¶¯¡£±ÈÈçÒ»¸öÈËÖ»ÓоßÓнÌʦµÄ½ÇÉ«²ÅÄÜÉϿΣ¨Ò»Öֻ£©£»Ò»¸öÈËÖ»ÓÐÊÇÒ»¸öºÏ·¨¹«Ãñ²ÅÄܲÎÓëÑ¡¾ÙºÍ±»Ñ¡¾Ù£»µ«ÊÇÓÐЩ»î¶¯Ò²ÊDz»ÐèÒª½ÇÉ«µÄ£¬±ÈÈçÒ»¸öÈ˲»ÐèÒª¾ß±¸ÈκνÇÉ«¾Í¿ÉÒÔ˯¾õ£¨Ò»Öֻ£©¡£µ±È»£¬Æäʵ˵È˲»ÐèÒª½ÇÉ«¾ÍÄÜ˯¾õÒ²ÊÇ´íÎóµÄ£¬´íÔÚÄÄÀÒòΪÎÒÃÇ¿ÉÒÔÕâÑùÀí½â£ºÒ»¸ö¿Í¹Û´æÔÚÖ»Òª¾ßÓС°ÈË¡±µÄ½ÇÉ«¾ÍÄÜ˯¾õ£¬ÆäʵÕâʱºò£¬ÎÒÃÇÒѾ°ÑDESCµ±×÷½ÇÉ«À´¿´´ýÁË¡£ËùÒÔ£¬Æäʵ½ÇÉ«Õâ¸ö¸ÅÄîÊǷdz£¹ãµÄ£¬²»ÄÜÓÃÎÒÃÇÆ½Ê±ËùÀí½âµÄÏÁÒåµÄ¡°Éí·Ý¡±À´Àí½â£¬ÒòΪ¡°½Ìʦ¡±¡¢¡°ºÏ·¨¹«Ãñ¡±¡¢¡°ÈË¡±¶¼¿ÉÒÔ±»×÷Ϊ½ÇÉ«À´¿´´ý¡£Òò´Ë£¬Ó¦¸ÃÕâÑù˵£ºÈκÎÒ»¸ö»î¶¯£¬¶¼ÐèÒª¾ßÓÐÒ»¶¨½ÇÉ«µÄ²ÎÓëÕß²ÅÄܲÎÓë¡£
ÓÃÒ»¾ä»°À´¸ÅÀ¨ËÄÉ«ÔÐ;ÍÊÇ£ºÒ»¸öʲôʲôÑùµÄÈË»ò×éÖ¯»òÎïÆ·ÒÔijÖÖ½ÇÉ«ÔÚij¸öʱ¿Ì»òij¶Îʱ¼äÄÚ²ÎÓëij¸ö»î¶¯¡£
ÆäÖС°Ê²Ã´Ê²Ã´ÑùµÄ¡±¾ÍÊÇDESC£¬¡°ÈË»ò×éÖ¯»òÎïÆ·¡±¾ÍÊÇPPT£¬¡°½ÇÉ«¡±¾ÍÊÇRole£¬¶ø¡±Ä³¸öʱ¿Ì»òij¶Îʱ¼äÄÚµÄij¸ö»î¶¯¡±¾ÍÊÇMI¡£ |