Como mapear em Java uma tabela relacional com atributo não-chave?

Boa tarde galera!

creio que a solução desta minha dúvida seja simples mas ainda não consegui resolve-la, por isso solicito a ajuda de vocês.

tenho as tabelas entidades no meu banco de dados chamadas EMPENHO, ENVOLVIDO E ENVOLVIMENTO e uma tabela relacional chamado EMPENHO_ENVOLVIDO que possui os campos codigo_empenho (chave estrangeira referente a tabela empenho), codigo_envolvido (chave estrangeira referente a tabela envolvido) e o campo codigo_envolvimento(chave estrangeira da tabela envolvimento).

Para entender melhor a tabela EMPENHO_ENVOLVIDO é o resultado da relação N-N entre as tabelas EMPENHO e ENVOLVIDO, e o campo codigo_envolvimento é responsável pela relação N-1 entre a tabela EMPENHO_ENVOLVIDO e a tabela ENVOLVIMENTO.

Para representar esta relação em classe JAVA fiz da seguinte forma:

[code]public class Empenho {

// outros atributos

@ManyToMany
@JoinTable(name=“empenho_envolvido”, joinColumns = { @JoinColumn(name=“codigo_empenho”
, unique=false, nullable=false, insertable=true)}, inverseJoinColumns = { @JoinColumn(name=“codigo_envolvido”, unique=false, nullable=false, insertable=true)})
private List envolvidos = new ArrayList();

// gets e sets
}

public class Envolvido {

// atributos

// gets e sets

}

public class Envolvimento {

// atributos

// gets e sets

}

[/code]

Como pode-se observar não existe o atributo para referenciar o relacionamento 1-N entre as tabelas ENVOLVIMENTO E EMPENHO_ENVOLVIDO.

Esta finalmente é a minha dúvida:

[size=18]Onde devo definir esta relação N-1 nas classes JAVA? Devo criar outra classe para definir este valor?[/size]

Desde já agradeço pela ajuda pessoal!