Duvida básica com aplicação em jsp

olá.
vocês podem me tirar a dúvida de como deve ser uma aplicação com jsp?

-sempre terei de ter servlets também?
-as classes que cuidam do negócio devem ser servlets? ou podem ser classes normais?
-e pra conectar ao banco há sempre uma única classe nao é?

existem basicamente duas formas de se trabalhar com JSP/Servelts:
-forma mais básica onde o cliente acessa as páginas JSP pelo navegador, essas páginas submetem dados para uma outra página JSP ou um Servlet (recomendável) e depois o cliente é redirecionado para uma página JSP de resultados.
-forma mais profissional onde você utiliza um framework MVC (de preferência MVC modelo 2) onde toda a requisição passar por um servlet que ‘controla’ a aplicação como um todo. A partir dele a requisição é enviada para um controller. Controller processa a requisição, chama as classes de negócio (essas classes não são servlets) e depois retorna uma página JSP para o cliente.

Respondendo às suas perguntas agora:
sempre terei de ter servlets também?
R: não. vc não é obrigado a ter servlets (não se esqueça apenas de que as páginas JSP são ‘transformadas’ em servlets pelo conteiner web em tempo de execução, ou seja, você sempre trabalha com servlets, mas talvez não diretamente). Neste caso você terá muito código Java em suas páginas JSP e isso não é recomendável.

as classes que cuidam do negócio devem ser servlets? ou podem ser classes normais?
R: essas classe NÃO devem ser servlets. é uma tendência atual que essas classes sejam classes java normais (POJO). além de muitos outros benefícios, isso as torna muito mais fácies de serem testadas.

e pra conectar ao banco há sempre uma única classe nao é?
R: nesse caso vai depender muito de que tipo de tecnologia voce está usando na camada de persistência (JDBC puro, JPA, iBatis…). Pela sua pergunta presumo que você trabalha com JDBC puro, fazendo as coisas na mão. Neste caso é interessante sim que você tenha uma classe que centraliza o acesso a banco de dados, controla as transações, tem alguns métodos utilitários para manipular dados, etc

incrivel! respondeu tudo! valeu cara!

cara, outra dúvida. tava dando uma olhada em JPA. meu tempo é pouco pra aprender isso, mas como também nem sei jdbc dá no msmo, rs.
então minha dúvida: há umas tais de Entities em JPA né? a lógica de negócio deve ser colocada nessas Entities? ou são apenas pra persistencia?