[DÚVIDA] Programação WEB : JSP +?

Olá, fiz alguns sisteminhas WEB para ver qual método eu me adapto melhor.

Primeiramente fiz os códigos java dentro das páginas jsp … chamando sempre a mesma página num form e na segunda vez que ela é executada eu fazia as consultas, inserções, etc no banco de dados.
Mas não gostei que fica tudo em uma página só … (programação e visual)

Começei a mexer com servlets, separando a programação da parte visual. Mas também nao gostei de criar uma servlet para cada “ação” que eu fizer no banco (deu quase 1 pra cada página que eu tinha). Excluindo alguns problemas que tive com passagem de parametros e tals.

Existe algum outro modo de fazer isso ? Pensei em criar páginas jsp sem conteudo visual, chamadas pelas páginas com conteudo visual, apenas os códigos java em tags <% %> isso é “comum” de se ver por aí ??? Ou existe ainda outro método ???

Valew

Bom dia!

É extremamente recomendado que você separe em camadas o seu desenvolvimento, fica algo muito mais legível, funcional e simples de dar manutenção.
Imagine problema com acesso a bancos e você tendo de resolve-lo dentro de uma página JSP. Isso deve ser feito em um DAO, por exemplo.

Mas enfim, você é obrigado a usar JSP + Servlet?
Pois eu recomendaria que você estudasse Java Server Faces. É muito simples e interessante.

Dê uma estudada em MVC, vai lhe ajudar.
Abraços!

Não não, não sou obrigado a usar nada específico, só quero fazer de um jeito que fique separado e “simples”.

Darei uma olhada em JSF.

Valew

tbm recomendo JSF para vc, mas se tiver que ser JSP + Servlets, eu recomendaria vc criar um servlet para cada tipo de ação, ou seja, um servlet só para fazer os cadastros, outro só para fazer as atualizações, outro só para carregar os dados para edição, outro só para as exclusões. lembrando que é só um exemplo, vc criaria de acordo com sua necessidade. e tbm separe a camada de persistência, usando DAO para realizar a persistência.

tsalsicha,

Se vc quizer continuar usando JSP/Servlet a apostila da Caelum http://www.caelum.com.br/download/caelum-java-web-fj21.pdf tem uma abordagem um pouco diferente: ao invés de usar um servlet pra cada ação, vc usaria apenas um controller e criaria classes específicas pra tratar de cada ação, não seria uma solução perfeita porém mais limpa.

[quote=luiz_renato]tsalsicha,

Se vc quizer continuar usando JSP/Servlet a apostila da Caelum http://www.caelum.com.br/download/caelum-java-web-fj21.pdf tem uma abordagem um pouco diferente: ao invés de usar um servlet pra cada ação, vc usaria apenas um controller e criaria classes específicas pra tratar de cada ação, não seria uma solução perfeita porém mais limpa.[/quote]

Rs, eu estou vendo isso agora mesmo, acabei de criar o Controller e vou fazer uma “aplicaçãozinha” pra ver se chega perto do que eu quero.

Concordo com o as respostas anteriores a principio vc usando ja jsf muitos desses passos serão automatizados. depois de aprender JSF estude JBoss Seam e uma ótima ferramente para somar no desenvolvimento com jsf.

Uma dúvida … vou usar como exemplo o da apostila que comentaram ali em cima /\ /\

COM MVC:

-) Crio uma página JSP, nela crio um form com uma action fixa (‘mvc’ no caso) e um type hidden com o nome da servlet que eu quero executar (inserir, por exemplo), no web.xml está mapeado que toda página /mvc eu chamo uma servlet CONTROLLER, nessa servlet eu pego o essa variavel hidden e executo a servlet de mesmo nome. (executo a servlet INSERIR). OK.

Qual a diferença então de no form da página eu colocar o mvc ou colocar o nome da servlet direto ? (colocando o nome da servlet eu teria que mapea-las no web.xml), mas tudo isso é só pra “poupar” o web.xml ?

Pessoal, vejo muito aqui no forum que toda vez que ha uma pergunta sobre jsp vocês dão conselhos para mudar para jsf, é por causa da simplicidade ou é porque o mercado esta deixando o jsp de lado?