У меня есть отдельный массив сущностей, переданных из внешнего интерфейса: LayoutUsages , и каждый layoutUsage связан с LayoutUsedBy (много к одному), при получении массива я использовал цикл для вставкии итерация каждого LayoutUsedBy с помощью { layoutUsage.getLayoutUsedBy (). getPrimaryKey () <= 0 </strong>}, первый элемент может войти в цикл, в то время как другие элементы будут иметь первичный ключ, который он получает из первого. поэтому ни один из них не может войти в него.
отношение является однонаправленным, LayoutUsage выглядит:
public class LayoutUsage {
//...
@ManyToOne(fetch=FetchType.LAZY, optional=false)
@JoinColumn(name="LAYOUT_USED_BY", nullable=false, referencedColumnName="ID")
@Cascade({})
protected LayoutUsedBy layoutUsedBy;
//...
}
Из отладки я замечаю, что:
- primaryKsage каждого layoutUsageравно 0, но arr [0] и arr 1 - это совершенно другой элемент (с другим hashCode), как в спящем режиме можно судить об этих двух сущностях как об одном?
- перед входом в цикл, arr [0] .layoutUsedBy. 1025 *