@CollectionOfElements
@JoinTable(
name = "TRACE_PROPERTY",
joinColumns = { @JoinColumn(name = "TRACE_ID") },
uniqueConstraints = { @UniqueConstraint(columnNames = {"TRACE_ID", "NAME", "VALUE" }) })
@org.hibernate.annotations.MapKey(
columns = @Column(name = "NAME", nullable = false, length = 100),
type = @Type(
type = "org.hibernate.type.EnumType",
parameters = {
@Parameter(name = "enumClass", value = "x.y.z.ExternalPropertyName"),
@Parameter(name = "type", value = "12")}))
@Column(name = "VALUE", nullable = false, length = 255)
private Map properties = new HashMap();
Read more: http://feeds.dzone.com/~r/dzone/snippets/~3/f0UGHDoYe14/14105