Dúvida Consulta SQL

Boa tarde Pessoal,

Estou com um dúvida de como fazer para retornar o resultado de uma consulta que e realizada num banco de dados.

Tenho um DAO que contem uma consulta que e realizada no banco de dados que retorna varias colunas nao somente de uma tabela mas de varias tabelas
como faco para retornar os valores para o usuario (view) tenho que criar uma classe com os atributos retornados pelo SQL ?

Obrigado …

usualmente o DAO passa os dados para a ação que constroe a jsp e exibe para o usuário.

voce deve criar uma classe para controlar essa solicitação. a classe de ação.

Olá
Os dados dessa consulta que pertencem a tabelas diferentes estão relacionados de alguma forma, não?
Provavelmente alguns desses dados representam uma entidade principal, e os outros dados pertencerão a objetos que compõem essa entidade principal.

EXEMPLO:

SELECT c.nome, e.rua, e.numero, e.bairro, e.cep, e.cidade, e.estado
FROM Cliente c
INNER JOIN Endereco e ON e.id = c.id

O campo c.nome deve estar mapeado em um atributo nome da classe Cliente.
Os campos e.rua, e.numero, …, e.estado devem estar mapeados em atributos de uma classe Endereco.
No seu método de consulta, você criará uma instância de Cliente e outra de Endereco, guardando na entidade principal ( Cliente ) uma referência para a instância da entidade auxiliar ( Endereco ).

Desculpe se não fui muito claro. Poste mais detalhes do seu modelo e da sua consuta.
Abraços

oi bfpires

    um bom pdf pra suas duvidas e aprendizado esta na caelum... da uma olhada f-21:
     www.caelum.com.br

tnaires

Segue o select da consulta:

Select
From Cliente A, DocumentoCliente B, DocumentoCliente C, DocumentoCliente D
Where B.NumCliente = A.SeqCliente
And B.NumTipoDocumento = 1 // CNPJ
And C.NumCliente = A.SeqCliente
And C.NumTipoDocumento = 3 // CPF
And D.NumCliente = A.SeqCliente
And D.NumTipoDocumento = 4 // IE

como faco este retorno dentro da minha classe Cliente tem list com os documentos do Cliente e dentro do documento cliente tem a classe Cliente?

Obrigado …

[quote=luciano_guedes_antunes]tnaires

Segue o select da consulta:

Select
From Cliente A, DocumentoCliente B, DocumentoCliente C, DocumentoCliente D
Where B.NumCliente = A.SeqCliente
And B.NumTipoDocumento = 1 // CNPJ
And C.NumCliente = A.SeqCliente
And C.NumTipoDocumento = 3 // CPF
And D.NumCliente = A.SeqCliente
And D.NumTipoDocumento = 4 // IE

como faco este retorno dentro da minha classe Cliente tem list com os documentos do Cliente e dentro do documento cliente tem a classe Cliente?

Obrigado …[/quote]

Não dá pra vc melhorar o seu SQL assim??

Select A.SeqCliente, B.NumCliente, B.NumTipoDocumento From Cliente A, DocumentoCliente B Where B.NumCliente = A.SeqCliente AND B.NumTipoDocumento IN (1,3,4)

[quote=luciano_guedes_antunes]Boa tarde Pessoal,

Estou com um dúvida de como fazer para retornar o resultado de uma consulta que e realizada num banco de dados.

Tenho um DAO que contem uma consulta que e realizada no banco de dados que retorna varias colunas nao somente de uma tabela mas de varias tabelas
como faco para retornar os valores para o usuario (view) tenho que criar uma classe com os atributos retornados pelo SQL ?

Obrigado …[/quote]

Luciano,

em muitas situações as consultas relacionais com inner/outer joins, subquerys, agregações e etc são muito mais rapidas nos bancos que qualquer solução OR. Se as consultas desse tipo tiverem campos variados e não tiverem grandes quantidades de registros para retornar, você pode utilizar um Map para cada registro e repassar para a view através de um list.

Se você estiver utilizando o struts, de uma olhada no DynamicForm:
http://struts.apache.org/1.3.8/userGuide/building_controller.html#dyna_action_form_classes
Ele utiliza a sitaxe do el, uma forma elegante para usar map ${beam.map.keymap}

fw