3.8 LivroVisitasIncluirDemoServlet.java
package br.aiec.controlador; import java.io.IOException; import java.util.List; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import br.aiec.negocio.ModeloPessoa; import br.aiec.negocio.Pessoa; import br.aiec.persistencia.TipoBD; @WebServlet(name = "LivroVisitasIncluir", urlPatterns = "/livroVisitasIncluir.do") public class LivroVisitasIncluirDemoServlet extends HttpServlet { @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { try { // Recuperando o bean criado na JSP Pessoa pessoaBean = (Pessoa) request.getAttribute("pessoaBean"); // Criando o objeto responsávevl por estabelecer a conexão com o // Modelo (Regras de Negócio) TipoBD tipoBD = TipoBD.valueOf(request.getParameter("tipoBD")); ModeloPessoa modelo = new ModeloPessoa(tipoBD); // Acessando o modelo de dados para os objetos do tipo Pessoa modelo.inserir(pessoaBean); // Consultando todos as pessoas existentes no modelo List<Pessoa> historicoVisitantes = modelo.consultarTodasPessoas(); // Compartilhando a lista de histórico no contexto da aplicação getServletContext().setAttribute("historyVisits", historicoVisitantes); // Redirecionando para uma JSP exibir o histórico de visitantes RequestDispatcher dispatcher = request .getRequestDispatcher("ExibirHistorico.jsp"); dispatcher.forward(request, response); } catch (Exception e) { // Redirecionando para uma JSP de exceção RequestDispatcher dispatcher = request .getRequestDispatcher("Excecoes.jsp"); //Atribuindo o objeto de exceção como um atributo da requisição request.setAttribute("excecao", e); //redirecionamento interno dispatcher.forward(request, response); } } }