У меня есть таблица productJob
и таблица quadrat
. Каждый квадрат может быть установлен на многих productJob
, и каждый productJob
может иметь от 1 до 4 quadrats
таких же или разных видов! Мне интересно сохранить порядок установки квадратов на рабочих местах. Например, первое, второе, третье или четвертое место! Но следующее сопоставление не создает столбец порядка на JoinTable telai_quadrati
. В чем проблема моего картографирования? Во всяком случае, OrderColumn не создается!Создание OrderColumn для отображения списка OneToMany в таблице соединений в Hibernate
@Entity
@Table(name = "telai")
public class ProductJob implements IProductJob, IProductJobProcessing{
@Embedded private QuadratGroup quadrateGroup = new QuadratGroup();
}
@Embeddable
public class QuadratGroup implements Serializable{
@OneToMany(targetEntity = Quadrat.class, cascade = CascadeType.ALL)
@JoinTable(
name = "telai_quadrati",
joinColumns = {@JoinColumn(name = "dbId", table = "telai")},
inverseJoinColumns = {@JoinColumn(name = "id", table = "quadrati")})
//@OrderColumn(name = "order")
@IndexColumn(name = "order")
public List<Quadrat> getQuadratList(){ //return an ordered list of the quadrats with at most 4 elements}
И понятно, что для квадратов не существует порядка, поэтому я использую set!
@Entity
@Table(name = "quadrati")
public class Quadrat implements IQuadrat, Cloneable, Serializable{
@ManyToMany
@JoinTable(
name = "telai_quadrati",
joinColumns = @JoinColumn(name = "id", table = "quadrati"),
inverseJoinColumns = @JoinColumn(name = "dbId", table = "telai"))
private Set<ProductJob> productJobs;