Estou trabalhando nesse problema e parece que agora piorou !

Tenho 1 Equipamento que pode ser utilizado em N grupos, e 1 Grupo pode utilizar N equipamentos…
Visualizei um relacionamento N:N, onde normalmente existe uma tabela Equipamento (onde pk = idEquipamento), uma tabela Grupo (onde pk = idGrupo) e uma tabela EquipamentoGrupo (onde a pk seria composta por idEquipamento+idGrupo).
Só não consigo definir como ficarão as classes para representar essa estrutura…
Minha idéia:
-Na classe Grupo terei um atributo do tipo List , que trará uma lista dos equipamentos.
Mas e ai… na classe Equipamento terei tb um List .
Eu tenho as tres tabelas criadas conforme falei acima e pedi para o NetBeans criar uma Classe de Entidade de Banco de Dados e selecionei a tabela EquipamentoGrupo, ele criou as seguintes classes:
Equipamento e Grupo - em cada uma ele criou um atributo do tipo:
private Collection<EquipamentoGrupo> equipamentoGrupoCollection;
EquipamentoGrupo - nesta ele criou:
protected EquipamentoGrupoPK equipamentoGrupoPK;
private Grupo grupo;
private Equipamento equipamento;
EquipamentoGrupoPK - n
private int eceqIdEquipamento;
private int eccoIdGrupo;
Não entendi porque necessito da EquipamentoGrupoPK…
Me desculpem, venho de VB+Oracle, então minha visão ainda esta pouco treinanda para OO… eu acho.
Abraços…