2013-06-03 3 views
0

My Application имеет следующие entites:JPA сущности отношение и критерии для строителя присоединился к колонку

@Entity 
public class proposal implements Serializable { 

@Id 
@Basic(optional = false) 
@NotNull 
@Column(name = "F1PRP")   
private Long proposalCode; 

//more fields... 
} 

@Entity 
public class branch implements Serializable { 

@EmbeddedId 
protected branchPK branchpk; 

//more fields.. 
} 

@Embeddable 
public class branchPK implements Serializable { 

@Basic(optional = false) 
@NotNull 
@Column(name = "F2PRP") 
private long proposalCode; 

@Basic(optional = false) 
@NotNull 
@Column(name = "F2BRN") 
private short proposalBranch; 
} 

proposal Каждые имеет первичный ключ (proposalCode), и каждое предложение может иметь несколько значений ветвления. Я не уверен, как построить отношения между ними, чтобы я смог создать построитель критериев для этого объединенного столбца.

Мой вопрос в том, какие отношения должны быть между этими enteties, и как я могу построить строитель критериев со вступлением? Пользователь даст мне значение proposalBranch, и мне нужно показать только proposal, у которых есть это предложение. Внутри них.

Как это сделать?

Thank's In Advance.

ответ

0

С сущностями, которые вы отправили, нет никакой связи между предложениемCode в объекте предложения и тем, что является частью объекта ветки, поэтому я предполагаю, что они должны быть одинаковыми.

О взаимоотношениях вы сказали, что каждое предложение может иметь несколько значений ветвления, так что отображается в виде отношения @OneToMany с предложением к отрасли:

@Entity 
public class proposal 
{ 
    @Id 
    @Column(name = "F1PRP")   
    private Long proposalCode; 

    @OneToMany(mappedBy="proposal") 
    private List<branch> branches; 
} 

@Entity 
public class branch 
{ 
    @Id 
    @Column(name = "F2BRN") 
    private short proposalBranch; 

    @ManyToOne 
    @JoinColumn(name="F2PRP") 
    private proposal proposal; 
} 

С этой установки, запрос критерии должны быть легко построить «корень» в качестве предложения и вызывать «присоединиться» к ветке. This is a good explanation of how Criteria API works.

Смежные вопросы