Caros Amigos,
Estou reescrevendo um serviço que está num linguição todo linear e passando para OO. Como referência, estou me baseando no Core J2EE Patterns http://java.sun.com/blueprints/corej2eepatterns/index.html.
A minha dúvida é a seguinte: no DAO, temos os TO para navegar as informações que saem do BD para outros lugares. Então, cada tabela teria um TO e o mundo seria perfeito. Mas no caso de um Join, o que é melhor? Criar um TO do acesso ou incorporar um TO em outro? Ou outra coisa mais “elegante”?
Exemplo:
Join
SELECT f.nome_funcionario, d.nome_departamento
FROM tbFuncionario f, tbDepartamento d
WHERE f.codigo_funcionario = <codigo>
AND f.codigo_departamento_funcionario = d.codigo_departamento
TOs
public Class funcionario
{
private long codigo;
private String nome;
public getters() / public setters()
}
public Class departamento
{
private long codigo;
private String nome;
public getters() / public setters()
}
A dúvida, um TO pro join…
public Class funcionarioDepartamento
{
private String nomeFuncionario;
private String nomeDepartamento;
public getters() / public setters()
}
Ou um TO que acople o outro…
public Class funcionario
{
private long codigo;
private String nome;
private Departamento departamento;
public getters() / public setters()
}
Ou até mais, um que extenda o outro…
public Class funcionario extends departamento
{
private long codigoFuncionario;
private String nomeFunctionario;
public getters() / public setters()
}
public Class departamento
{
private long codigoDepartamento;
private String nomeDepartamento;
public getters() / public setters()
}
Ou alguma outra solução mais elegante…
Senhores, obrigado pela opinião desde já. 8)