23.4.3. 共有组合键属性的多对多(Many-to-many with shared composite key attribute)

  1. <class name="User" table="`User`">
  2. <composite-id>
  3. <key-property name="name"/>
  4. <key-property name="org"/>
  5. </composite-id>
  6. <set name="groups" table="UserGroup">
  7. <key>
  8. <column name="userName"/>
  9. <column name="org"/>
  10. </key>
  11. <many-to-many class="Group">
  12. <column name="groupName"/>
  13. <formula>org</formula>
  14. </many-to-many>
  15. </set>
  16. </class>
  17. <class name="Group" table="`Group`">
  18. <composite-id>
  19. <key-property name="name"/>
  20. <key-property name="org"/>
  21. </composite-id>
  22. <property name="description"/>
  23. <set name="users" table="UserGroup" inverse="true">
  24. <key>
  25. <column name="groupName"/>
  26. <column name="org"/>
  27. </key>
  28. <many-to-many class="User">
  29. <column name="userName"/>
  30. <formula>org</formula>
  31. </many-to-many>
  32. </set>
  33. </class>