MVC com execução de querys na action

Estou dando manutenção em uma aplicação e nela existe um metodo no BO que executa uma query, tipo um bo.executaSql(sql, new Object[]{…} )

Desta forma da action (usando Strtus) é disparada algumas “idas” ao banco…
Isso e elegante fazer ??

Essa acao esta direto na action? O certo a fazer é a action disparar um metodo que ira executa a acao necessaria, se dentre essas acoes é ida ao banco, esse metodo realizará.

Actions do Struts indo até o banco? Não, não é elegante.

Respondendo a pergunta:

  • BO não é elegante de fazer.
  • Query direto no BO não é elegante de fazer.
  • Mesmo se fosse um objeto de verdade com a query dentro também não seria elegante de fazer.

Pra ficar no mínimo decente, você não deveria ter BO e sim objetos e também colocar sua query dentro de um DAO (pelo menos).

[]s

[quote=Emerson Macedo]Respondendo a pergunta:

  • BO não é elegante de fazer.
  • Query direto no BO não é elegante de fazer.
  • Mesmo se fosse um objeto de verdade com a query dentro também não seria elegante de fazer.

Pra ficar no mínimo decente, você não deveria ter BO e sim objetos e também colocar sua query dentro de um DAO (pelo menos).

[]s
[/quote]

ueh e BO não é objeto ? não vejo problema nenhum em usar marcação para os Business Objects, assim como DTOs , VOs, se poder explicar o problma disso
agradeço, exceto a poluição com um monte de siglas…

agora um BO nao te pra ter conhecimento de execução de query.

É só procurar aqui no GUJ que você acha sobre BOs, VOs, DTOs

http://www.guj.com.br/posts/list/62527.java
http://www.guj.com.br/posts/list/62818.java

Pare um pouquinho pra pensar: Pra quer ter ContaBO e ContaVO se você pode ter só Conta? Afinal de contas, objeto = estado + comportamento.