ÉèΪÊ×Ò³ ¼ÓÈëÊÕ²Ø

TOP

HibernateÖ÷¼üÉú³É²ßÂÔ(¶þ)
2015-11-21 01:35:00 À´Ô´: ×÷Õß: ¡¾´ó ÖРС¡¿ ä¯ÀÀ:2´Î
Tags£ºHibernate Éú³É ²ßÂÔ
ng
hibernate»áËã³öÒ»¸ö16λµÄÖµ²åÈë

8¡¢native

´úÀíÖ÷¼ü£¬¸ù¾Ýµ×²ãÊý¾Ý¿âµÄ¾ßÌåÌØÐÔÑ¡ÔñÊʺϵÄÖ÷¼üÉú³É²ßÂÔ£¬Èç¹ûÊÇmysql»òsqlserver£¬Ñ¡Ôñidentity£¬Èç¹ûÊÇoracle£¬Ñ¡Ôñsequence¡£

¸ù¾ÝÊý¾Ý¿âµÄÀàÐÍ,×Ô¶¯ÔÚsequence ¡¢identityºÍ,hilo½øÐÐÇл»£¬Áé»îÐÔ¸üÇ¿£¬Èç¹ûÑ¡Ôñsequence»òÕß hilo£¬ÔòËùÓеıíµÄÖ÷¼ü¶¼»á´ÓHibernateĬÈϵÄsequence»òÕßhilo±íÖÐÈ¡¡£²¢ÇÒ£¬ÓеÄÊý¾Ý¿â¶ÔÓÚĬÈÏÇé¿öÖ÷¼üÉú³É²âÊÔµÄÖ§³Ö£¬Ð§Âʲ¢²»ÊǺܸß

ʵÏÖ×Ô¶¯Çл»µÄÒÀ¾Ý:¸ù¾ÝHibernateÅäÖÃÎļþÖеķ½ÑÔÀ´ÅжÏÊÇOracle»¹ÊÇMysql¡¢SqlServer,È»ºóÕë¶ÔÊý¾Ý¿âµÄÀàÐ;ñÔñ sequence»¹ÊÇidentity×÷ΪÖ÷¼üÉú³É²ßÂÔ¡£¶ÔÓÚ oracle ²ÉÓà Sequence ·½Ê½£¬¶ÔÓÚMySQL ºÍ SQL Server ²ÉÓÃidentity£¨×ÔÔöÖ÷¼üÉú³É»úÖÆ£©£¬native¾ÍÊǽ«Ö÷¼üµÄÉú³É¹¤×÷½»ÓÉÊý¾Ý¿âÍê³É£¬hibernate²»¹Ü£¨ºÜ³£Óã©

Óô¦£ºÓÉÓÚHibernate»á¸ù¾Ýµ×²ãÊý¾Ý¿â²ÉÓò»Í¬µÄÓ³É䷽ʽ£¬Òò´ËÁé»îÐԸߣ¬±ãÓÚ³ÌÐòÒÆÖ²£¬ÏîÄ¿ÖÐÈç¹ûÓõ½¶à¸öÊý¾Ý¿âʱ£¬¿ÉÒÔʹÓÃÕâÖÖ·½Ê½¡£

9¡¢assigned

ÓÉÓ¦ÓóÌÐò¸ºÔðÉú³ÉÖ÷¼ü±êʶ·û£¬ÍùÍùʹÓÃÔÚÊý¾Ý¿âÖÐûÓдúÀíÖ÷¼ü£¬Ê¹ÓõÄÖ÷¼üÓëÒµÎñÏà¹ØµÄÇé¿ö£¬ÕâÊÇ ÔªËØÃ»ÓÐÖ¸¶¨Ê±µÄĬÈÏÉú³É²ßÂÔ¡£È磺

ÕâÖÖÖ÷¼üµÄÉú³É·½Ê½²»½¨ÒéʹÓã¬ÔÚÊý¾Ý¿â±íÉè¼ÆÊ±¾ÍÓ¦¸ÃʹÓôúÀíÖ÷¼ü£¨surrogate key£©£¬²»Ó¦Ê¹ÓÃ×ÔÈ»Ö÷¼ü£¨natural key¾ßÓÐÒµÎñº¬Ò壩£¬ÔÚûÓÐÖ¸¶¨±êǩʱ£¬Ä¬ÈϾÍÊÇassignedÖ÷¼üµÄÉú³É·½Ê½
ÔÚ²åÈëÊý¾ÝµÄʱºòÖ÷¼üÓÉÓû§×Ô¼ºÌí¼Ó£¬hibernateÒ²²»¹Ü

×÷ÓÃ:ÓÃÓÚÊÖ¹¤·ÖÅäÖ÷¼üÉú³ÉÆ÷,Ò»µ©Ö¸¶¨ÎªÕâ¸öÁË,Hibernate¾Í²»ÔÚ×Ô¶¯Îª³ÌÐò×öÖ÷¼üÉú³ÉÆ÷ÁË¡£Ã»ÓÐÖ¸¶¨ ±êǩʱ£¬Ä¬ÈϾÍÊÇassignedÖ÷¼üµÄÉú³É·½Ê½

ÔÚ³ÌÐòÖÐsession.save();֮ǰ,ÓɳÌÐòÔ±×Ô¼ºÖ¸¶¨Ö÷¼üֵΪ¶àÉÙ¡£

ÀýÈç:user.setId(1);Õâ¾ÍÊÇÔÚ³ÌÐòÖгÌÐòÔ±ÊÖ¶¯ÎªÓû§±íÖ¸¶¨Ö÷¼üֵΪ1

10¡¢select

?

ʹÓô¥·¢Æ÷Éú³ÉÖ÷¼ü£¨Ö÷ÒªÓÃÓÚÔçÆÚµÄÊý¾Ý¿âÖ÷¼üÉú³É»úÖÆ£¬ÉÙÓã©

ps:

´úÀíÖ÷¼üÊÇÖ¸ÓëÒµÎñÎÞ¹ØÇÒÄÜΨһ±êʶÊý¾Ý¿âÖмǼ,Ò»°ãÊÇÊý¾Ý¿â×Ô¶¯Éú³ÉµÄ,±ÈÈçmysql¿ÉÒÔʹÓÃauto_increment,Sql2000 ¿ÉÒÔʹÓÃidentityÉú³É·½Ê½,oracle¿ÉÒÔʹÓÃsequenceÉú³É·½Ê½ ×ÔÈ»Ö÷¼üÖ¸ÒµÎñÏà¹Ø,ÓÉÓû§Ö¸¶¨,ÇÒÄÜΨһ±êʶÊý¾Ý¿âÖеÄÈÎÒâÒ»Ìõ¼Ç¼¡£

11¡¢foreign

?

Ö»ÊÊÓûùÓÚ¹²ÏíÖ÷¼üµÄÒ»¶ÔÒ»¹ØÁªÓ³ÉäµÄʱºòʹÓ᣼´Ò»¸ö¶ÔÏóµÄÖ÷¼üÊDzÎÕÕµÄÁíÒ»ÕűíµÄÖ÷¼üÉú³ÉµÄ¡£Í¨³£ºÍ ÁªºÏÆðÀ´Ê¹Óá£


×ܽ᣺¹ØÓÚÖ÷¼üÉú³É²ßÂÔµÄÑ¡Ôñ

?

Ò»°ãÀ´ËµÍƼöUUID£¬ÒòΪÉú³ÉÖ÷¼üΨһ£¬ÇÒ¶ÔÊý¾Ý¿âÎÞÒÀÀµ£¬¿ÉÒÆÖ²ÐÔÇ¿¡£

ÓÉÓÚ³£ÓõÄÊý¾Ý¿â£¬ÈçOracle¡¢DB2¡¢SQLServer¡¢MySql µÈ£¬¶¼ÌṩÁËÒ×ÓõÄÖ÷¼üÉú³É»úÖÆ£¨Auto-Increase ×ֶλòÕßSequence£©¡£ÎÒÃÇ¿ÉÒÔÔÚÊý¾Ý¿âÌṩµÄÖ÷¼üÉú³É»úÖÆÉÏ£¬²ÉÓÃnative£¬sequence»òÕßidentityµÄÖ÷¼üÉú³É·½Ê½¡£

²»¹ýÖµµÃ×¢ÒâµÄÊÇ£¬Ò»Ð©Êý¾Ý¿âÌṩµÄÖ÷¼üÉú³É»úÖÆÔÚЧÂÊÉÏδ±Ø×î¼Ñ´óÁ¿²¢·¢insertÊý¾Ýʱ¿ÉÄÜ»áÒýÆð±íÖ®¼äµÄ»¥Ëø¡£

Òò´Ë£¬¶ÔÓÚ²¢·¢InsertÒªÇó½Ï¸ßµÄϵͳ£¬ÍƼö²ÉÓÃuuid×÷ΪÖ÷¼üÉú³É»úÖÆ¡£

×ÜÖ®£¬hibernateÖ÷¼üÉú³ÉÆ÷Ñ¡Ôñ£¬»¹Òª¾ßÌåÇé¿ö¾ßÌå·ÖÎö¡£Ò»°ã¶øÑÔ£¬ÀûÓÃuuid·½Ê½Éú³ÉÖ÷¼ü½«Ìṩ×îºÃµÄÐÔÄܺÍÊý¾Ý¿âƽ̨ÊÊÓ¦ÐÔ¡£




Ê×Ò³ ÉÏÒ»Ò³ 1 2 ÏÂÒ»Ò³ βҳ 2/2/2
¡¾´ó ÖРС¡¿¡¾´òÓ¡¡¿ ¡¾·±Ìå¡¿¡¾Í¶¸å¡¿¡¾Êղء¿ ¡¾ÍƼö¡¿¡¾¾Ù±¨¡¿¡¾ÆÀÂÛ¡¿ ¡¾¹Ø±Õ¡¿ ¡¾·µ»Ø¶¥²¿¡¿
·ÖÏíµ½: 
ÉÏһƪ£º¹ØÓÚWindowsÊý¾Ý¿â·þÎñÆ÷¸ü»»ÎªLi.. ÏÂһƪ£ºAerospikeC¿Í»§¶ËÊÖ²á¨D¨D¨D×î¼ÑÊ..

ÆÀÂÛ

ÕÊ¡¡¡¡ºÅ: ÃÜÂë: (ÐÂÓû§×¢²á)
Ñé Ö¤ Âë:
±í¡¡¡¡Çé:
ÄÚ¡¡¡¡ÈÝ: