此内容没有您所选择的语言版本。
7.6. Other Association Mappings
7.6.1. Complex Association Mappings 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
More complex association joins are extremely rare. Hibernate handles more complex situations by using SQL fragments embedded in the mapping document. For example, if a table with historical account information data defines
accountNumber
, effectiveEndDate
and effectiveStartDate
columns, it would be mapped as follows:
You can then map an association to the current instance, the one with null
effectiveEndDate
, by using:
In a more complex example, imagine that the association between
Employee
and Organization
is maintained in an Employment
table full of historical employment data. An association to the employee's most recent employer, the one with the most recent startDate
, could be mapped in the following way:
This functionality allows a degree of creativity and flexibility, but it is more practical to handle these kinds of cases using HQL or a criteria query.