Servlets + DB

11 respostas
I

Olá… estou começando agora com servlets e gostaria de esclarecer uma dúvida…

Como devo usar banco de dados com servlets?

Eu pensei na seguinte forma, me corrijam de estiver errado:
Criar uma classe que acessa o banco de dados
Criar uma classe que faz o controle dos dados
Criar um pool
Criar o Servlet

Penso assim:

Servlet passa o dado que ele quer para a classe que controla os dados, a classe que controla chama a classe que acessa que por sua vez chama o pool e pede uma conexão… ela retorna os dados para a classe que controla os dados, ela faz o controle e retorna uma colection para o servlet.
No servlet eu leio essa colection e monto a página…
Para um estudo essa é a idéia que eu tenho em mente, gostaria da opinião de vocês, sobre como trabalhar com isso já seguindo um padrão, uma vez que está é meu primeiro passo depois da OO.

Estou no aguardo…

11 Respostas

_fs

Parece bom cara :smiley:

Dá uma procurada na net sobre DAO Pattern, vai deixar as coisas mais simples na sua cabeça.

E outra coisa, que tal adicionar uma camada view um pouco mais chique do que saída html pelo servlet? :smiley:

I

“LIPE”:
Parece bom cara :smiley:

Dá uma procurada na net sobre DAO Pattern, vai deixar as coisas mais simples na sua cabeça.

E outra coisa, que tal adicionar uma camada view um pouco mais chique do que saída html pelo servlet? :D

E qual camada view você me recomendaria para um primeiro aprendizado?

_fs

JSP, porque bastante gente usa, portanto há bastante documentação, fóruns, wikis, mailing lists, tutoriais, exemplos etc.

Depois que você estiver à vontade com essa arquitetura, escolha qualquer outra tecnologia que te interessar.

Dica prematura: apesar de ser possível, não coloque regras de negócio dentro das jsps.

I

“LIPE”:
JSP, porque bastante gente usa, portanto há bastante documentação, fóruns, wikis, mailing lists, tutoriais, exemplos etc.

Depois que você estiver à vontade com essa arquitetura, escolha qualquer outra tecnologia que te interessar.

Dica prematura: apesar de ser possível, não coloque regras de negócio dentro das jsps.

Falou grego sobre as regras de negocio…

Sabe que eu não achei jsp uma coisa bonita? Sei lá… não consigo entender muito bem aquele código… só uma dúvida, jsp é parecido com asp? assim a arquitetura do arquivo?

eu posso tipo fazer assim:

<%
aqui faço os imports
%>
<HTML>
aqui escrevo o html e quando preciso eu abro o jsp

pode ser assim?

ou precisa ser daquele jeito feio que todo mundo usa nos tutoriais?

_fs

Cara, basicamente o uso de uma tecnologia além de html na view serve para pegar os dados do seu servlet e mostrar para o usuário.

Aqui tem um exemplo bem básico do uso de JSP num formulário:
http://www.jsptut.com/Forms.jsp

O que quis dizer com regras de negócio dentro da página JSP, seria algo como fazer acesso a dados de dentro da página, como se faz normalmente com asp e php.

E, bem, se você realmente acha feio demais jsp, pode usar velocity, que é bem mais simples, mas não há tantos tutoriais aí pela internet.

I

“LIPE”:
Cara, basicamente o uso de uma tecnologia além de html na view serve para pegar os dados do seu servlet e mostrar para o usuário.

Aqui tem um exemplo bem básico do uso de JSP num formulário:
http://www.jsptut.com/Forms.jsp

O que quis dizer com regras de negócio dentro da página JSP, seria algo como fazer acesso a dados de dentro da página, como se faz normalmente com asp e php.

E, bem, se você realmente acha feio demais jsp, pode usar velocity, que é bem mais simples, mas não há tantos tutoriais aí pela internet.

Eu compreendi jsp agora… não entendia o porque daquelas tags de bean, mas agora eu já peguei o jeito… me diz só uma coisa

Quando faço acesso a dados, atraves de um bean, eu chamo o set property para ele passar o parametro e fazer a busca certo? Agora para retornar eles, eu uso o get property certo?
Como eu faria o retorno de uma quantidade de dados repetida?

Por exemplo:

Set property - João
Get property sairia assim:

Joao alberto
Joao roberto
Joao machado
Joao venancio

como faço pra trazer estes dados pro html? Insiro uma tabela dentro do proprio while?

_fs

digamos que você tenha um getNomes que retorna um arrayList de objetos.

Então na sua JSP você atribuiria esse bean (com get property) a um arrayList e faria um iteração por ele imprimindo todos os nomes

Iterator i = meuArrayList.iterator&#40;&#41;;
while&#40; i.hasNext&#40;&#41; &#41;
out.println&#40; "&lt;p&gt;" + i.next&#40;&#41; + "&lt;/p&gt;" &#41;;

Tem outros jeitos melhores, mas já deu pra você entender a ideia.

I

“LIPE”:
digamos que você tenha um getNomes que retorna um arrayList de objetos.

Então na sua JSP você atribuiria esse bean (com get property) a um arrayList e faria um iteração por ele imprimindo todos os nomes

Iterator i = meuArrayList.iterator&#40;&#41;;
while&#40; i.hasNext&#40;&#41; &#41;
out.println&#40; "&lt;p&gt;" + i.next&#40;&#41; + "&lt;/p&gt;" &#41;;

Tem outros jeitos melhores, mas já deu pra você entender a ideia.

Mas eu faço isso no html mesmo?

abro o <% e faço o iterator dentro de uma tabelinha, abrindo e fechando os <% %> né?

_fs

hehe cara, vai devagarzinho que voce entende o todo rapidinho

http://courses.coreservlets.com/Course-Materials/csajsp2.html
http://www.coreservlets.com/

I

“LIPE”:
hehe cara, vai devagarzinho que voce entende o todo rapidinho

http://courses.coreservlets.com/Course-Materials/csajsp2.html
http://www.coreservlets.com/

hehehe… valeu

F

LIPE:
digamos que você tenha um getNomes que retorna um arrayList de objetos.

Então na sua JSP você atribuiria esse bean (com get property) a um arrayList e faria um iteração por ele imprimindo todos os nomes

Iterator i = meuArrayList.iterator&#40;&#41;;
while&#40; i.hasNext&#40;&#41; &#41;
out.println&#40; "&lt;p&gt;" + i.next&#40;&#41; + "&lt;/p&gt;" &#41;;

Tem outros jeitos melhores, mas já deu pra você entender a eia.

Lipe, eu estou com um probleminha parecido com o q vc explicou a cima.

Estou tentando imprimir uma Collection em um metodo main mesmo soh para um teste, e estou fazendo isso utilizando o Iterator. Eu implementei da mesma forma que vc exemplificou a cima, soh que ele imprime soh os indereços de memoria dos objetos contidos dentro da Collection. Como faço para imprimir os dados de uma maneira correta??

Criado 27 de julho de 2004
Ultima resposta 3 de ago. de 2006
Respostas 11
Participantes 3