Hibernate - chave estrangeira

boa tarde a todos.

estou usando hibernate(3.2) com anotação.

tenho no BD:

tabela A com os campos: pka, nome. (pka => chave primaria)

tabela B com os campos: pkb, fka, email. (pkb => chave primaria, fka => chave estrangeira)

a chave primaria da tabela A vai ficar armazenado na coluna fka da tabela B.

no hora que vou inserir um registro na tabela B preciso da chave primaria da tabela A.

gostaria de saber se dá e como fazer para mapear esse esquema.

obrigado a todos.

public class A{
@Id
long pka;
}

public class B{
@Id
long pkb;
@OneToOne
@JoinTable(name="pkb_pka",joinColumns={@JoinColumn(name="pkb")})
A myAinstance;
}

é isso ou bem parecido, não lembro direito

fiz um exemplo simples e deu certo. porém gostaria de usar algo com uma coleção de bean.

o exemplo que fiz está com a seguinte estrutura:

no banco tenho as tabelas:

aluno: idaluno, nome.
alunotelefone: idaluno, telefone.

meus bean:

[code]@Entity
@Table(name=“aluno”)
@SequenceGenerator(name=“SEQ”,sequenceName=“aluno_idaluno_seq”, initialValue=1, allocationSize=1)
public class Aluno {

@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator="SEQ") 
@Column(name="idaluno", unique=true, nullable=false, insertable=true, updatable=true)
private int idaluno;

private String nome;

@CollectionOfElements
@JoinTable(name="alunotelefone", joinColumns=
        @JoinColumn(name="idaluno", referencedColumnName="idaluno")) 
@Column(name="telefone") 
private Set<String> telefones;[/code]

gostaria de controlar os telefones como sendo uma coleção de bean do tipo telefone. também vou precisar de outras informações além do telefone.

obrigado.