Valor no construtor ou na passagem dos métodos?

Tenho uma aplicação q está assim:
Action <> BD <> DAO <> VO.
Eu preciso enviar p o select no DAO a minha instância da base(unidade).Ou seja, passar esse parametro da action atééé o DAO.

EX: “Select * from” +unidade+.cliente “where id = 12”

Queria saber se passo por parametro este valor em cada método q for usar no DAO ou quando eu instaciar a classe DAO q possui todos esse métodos eu já passo unidade no construtor.

Alguém pode opinar?

Obrigado

Opiniões, é? :twisted:

1 - Seu esquema tá estranho, não seria:
Action <> VO <> DAO <> BD ?

2 - Não use concatenação de Strigns para SQL, use preparedStatements

3 - Ainda que sua estrutura seja a que eu descrevi (ou não) procure no fórum sobre VO (melhor: DTO) e você vai ver que não precisa deles

4 - Eu acho que você deve estar passando parâmetros que recebe do usuário, não é? Então pare de trabalhar com dados e trabalhe com objetos :wink:

Conclusão: acho que você sabe como dazer isso “funcionar”. Se você quer é saber como fazer do modo menos ruim, dê uma olhada em tópicos como este.

Quanto a estrutura o q vc está falando é o q faço,é só questão de interpretação.
BD q eu quiz dizer é business delegate nao banco de dados.
VO é uma classe com get e set,chamo de TO tb.(ou seja,to usando objetos).
Mas o mais importante é saber qual a melhor forma de eu levar até o DAO a unidade.É q a empresa esta dividida em unidades,ou seja ,vários usuários.E ai tenho q identificar tal tbl de tal unidade.
O q procuro realmente é:a forma mais adequada.

Bom! Com certeza estou usando prepare statement ,a query foi só um exemplo p mostrar o q estava querendo dizer.

Valeu muito pelas dicas.Obrigado.

ok,

Voud ar outra dica então: procure por JavaBeans, Domain Model e DTOs aqui, você pdoe acabar percebendo que existem objetos e objetos :wink:

Olha aqui a minha boa ação de hoje:

Dê uma olhada nestes tópicos!

http://www.guj.com.br/posts/list/21017.java
http://www.guj.com.br/posts/list/21007.java
http://www.guj.com.br/posts/list/21002.java
http://www.guj.com.br/posts/list/21687.java

Acho que esses são alguns exemplos que podem ajudá-lo! É um assunto quentíssimo!

Abraços!
Thiago