Olá!
Pessoal, estou desenvolvendo um sistema onde o produto pode ter várias categorias e subcategorias.
Estou usando JPA com Toplink.
Minha classe Categoria está assim:
Code:
@Entity
@Table (name="tb_categorias")
public class Categoria extends Persistivel implements java.io.Serializable {
private static final long serialVersionUID = 1L;
@Column (name = "descricao")
private String descricao;
@ManyToOne (fetch=FetchType.EAGER, cascade = CascadeType.PERSIST)
@JoinColumn (name = "categoria_pai_id")
private Categoria categoriaPai;
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.EAGER)
@JoinTable (name = "tb_subcategorias")
private Collection<Categoria> subCategorias;
...
Gostaria de sugestões para melhorar esta estrutura e se, alguém tiver algo semelhante, os métodos de procura recursiva utilizados.
Acredito que seja a implementação do padrão Composite:
Abraços,