Eu recomendo você a dar uma olhadinha no Velocity. Com ele, vc separa a sua camada de visão (seu Template) de seu Servlet (no caso, um VelocityServlet).
Já o banco, vc pode manter uma conexão encapsulada dentro de uma classe para você. É legal também usar o padrão DAO (Data Access Object) para acesso a dados e o TO (Transfer Object) para o tráfego das informações.
o que vcs acham de usar um servlet para fazer uma consulta num BD, gravar o resultado em uma collection ‘c’,
gravar ‘c’ na session, dar um forward para uma pagina JSP, na pagina JSP pegar ‘c’ da session e exibir o conteúdo de ‘c’?
pcalcado
microfilo:
o que vcs acham de usar um servlet para fazer uma consulta num BD, gravar o resultado em uma collection ‘c’,
gravar ‘c’ na session, dar um forward para uma pagina JSP, na pagina JSP pegar ‘c’ da session e exibir o conteúdo de ‘c’?
Se você vai dar forward, coloque seu atributo em escopo de Request. Session é para dados de Sessão, não use isso para passar dados de um Servlet para uma JSP.
[]s
Rubem_Azenha
ok… vlw…
mas o que acham da mesma situação, passando os dados para request como o pcalcado falou?
vcs acham melhor assim ou usando uma custom tag, que chama uma classe, que acessa o bd, e retorna os dados numa collection?
kuchma
A primeira opcao eh melhor - use custom tags para tarefas relacionadas a camada view (formatacao, exibicao, etc).
Porem a primeira opcao pode ser melhorada: extraia a logica de acesso a banco de dados e coloque numa classe especializada. O servlet fica sendo apenas “C”, o JSP fica sendo o “V” e da classe especializada pra tras fica sendo o “M”.
Digo “pra tras” porque voce pode aperfeicoar o esquema e utilizar patterns como DAO e Business Delegate - se for necessario. Nao utilize patterns apenas para inflar o numero de classes do sistema, exceto claro se estiver recebendo por LOC (linha de codigo). :mrgreen:
Marcio Kuchma
Rubem_Azenha
perae, não entendi, vc esta falando que é melhor o servlet acessar o banco de dados e gravar no request, ou a propria pagina JSP chama, por uma custo m tag, uma classe estilo “conexaoDAO” para acessar os dados???
pcalcado
Não, ele sugeriu que você não conecte ao seu BD via Servlet, que use classes específicas para isso.
Cudiado ao criar tags customizadas demais para sua aplicação, procure reutilizar as já existentes.
[]s
Lucas_Teixeira
gente gente…
Não é por nada, mais eu continuo achando que templates e variáveis oferecidas a ele como na minha primeira msg seja a melhor solução (opiniao)
Tags customizadas? Ui. VelocityServlet ficaria legal para ele visto que é relativamente trivial para ele aprender (pediu para iniciante) e como ele quer, “separa” muito bem a View do Controller.
pcalcado
Para aprender JPS puro, depois tags customizadas.
Para trabalhar, Velocity.
[]s
I
Igor_Barros
Uma dúvida, eu pego o conteúdo de uma collection e jogo ela para o jsp.
Alguém pode me dizer como faço para exibir ela? Já tentei de diversas maneiras e não consegui. Se alguém tiver um exemplinho…