Dúvida em relacionamento de tabelas

Olá pessoal estou com a seguinte dúvida!
Qual a melhor maneira de fazer um relacionamento entre duas classes? Eu implementei uma solução mas gostaria da opinião de alguém mais experiente. Segue:

Estou criando uma arquitetura composta de DAO e VO tenho duas classes relacionadas tal como Cidade -> UF (1…1)

Tenho as classes CidadeDAO e UFDAO nestas duas tenhos métodos C.R.U.D. e um método de pesquisa onde passo os parâmetros para qualquer pesquisa

Em Cidade criei uma referencia para UF e na tabela respectiva a Cidade criei uma FK para a tabela UF (uf_o_id)

Minha dúvida principal é a seguinte, existe alguma forma que eu não crie um atributo uf_o_id em Cidade?

Sei que no Hibernate isto é feito no mapeamento das tabelas pelo hbm mas eu estou utilizando JDBC acessando MySql

Desde já agradeço

Isso que você quer?

[code]public class Cidade{
private int id;
private String nome;
private UF uf;
//getters & setters
}

public class UF{
private String sigla;
private String nome;
//getters & setters
}[/code]

Olá Jair
Na verdade eu implementei isso mas na classe Cidade eu inclui um atributo uf_id para fazer referencia a FK da tabela UF além da refencia da própria classe UF

public class Cidade{ private int id; private String nome; private uf_id private UF uf; //getters & setters }

E aí no meu método getUF e buscaria o registro correspondente a UF relacionada à cidade desta forma:

[code] public UF getUf(){
DAOFactoryGeral daoFactory;
try {
daoFactory = DAOFactoryGeral.getDAOFactory();
UFDAO ufDAO = daoFactory.createUFDAO();
if (uf.getO_id()!= this.getUf_o_id()) {
uf.setO_id(this.getUf_o_id());
List<UF> ufList =
ufDAO.SearchByCriterio(ufDAO.getAllFields(), uf, null);
this.setUf((UF)ufList.iterator().next());
}
} catch (PersistanceException ex) {
ex.printStackTrace();
}

    return uf;
&#125;[/code]

Teria outra forma de fazer isso pois eu quero guando fizer isso Cidade.geUf().getSigla() me traga a sigla da uf relacionada com a cidade.

Isso está funcionando mas gostaria de saber se existe outra forma de fazer

Obrigado

[size=“11”][color=“red”]* Editado: Lembre-se de utilizar BBCode em seus códigos - marcossousa[/color][/size] :joia: