Boa tarde pessoal,
Tenho uma tabela (Tag) com auto-relacionamento que aponta para um registro pai (TagId PK, ParentTagId FK)
Tenho a classe abaixo mapeada por annotations e funcionando corretamente (consigo retornar as Tags e o seu 'parent')@Entity
@Table(name="SearchTag")
public class SearchTag {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="TagId")
public long getTagId() {
return tagId;
}
public void setTagId(long tagId) {
this.tagId = tagId;
}
private long tagId;
@ManyToOne( cascade = {CascadeType.PERSIST, CascadeType.MERGE} )
@JoinColumn(name="ParentTagId")
public SearchTag getParentTag() {
return parentTag;
}
public void setParentTag(SearchTag parentTag) {
this.parentTag = parentTag;
}
private SearchTag parentTag;
}
Meu problema é o seguinte: qual a melhor forma para eu implementar metodo que retorne uma Collection com as tags filhas de uma determinada tag? Com sql seria simplesmente um select * from tag where parenttagid = ?, mas estou pensando em como fazer isso mapeando com annotations...seria possivel?
Obrigado