@Override
  public String executa(HttpServletRequest req, HttpServletResponse res) throws Exception {

    Contato contato = new Contato();

    contato.setNome(req.getParameter("nome"));
    contato.setEndereco(req.getParameter("endereco"));
    contato.setEmail(req.getParameter("email"));

    String dataEmTexto = req.getParameter("dataNascimento");
    Calendar dataNascimento = null;

    try {
      Date date = new SimpleDateFormat("dd/MM/yyyy").parse(dataEmTexto);
      dataNascimento = Calendar.getInstance();
      dataNascimento.setTime(date);
      contato.setDataNascimento(dataNascimento);
    } catch (ParseException e) {
      System.out.println("Erro de conversao da data");
    }

    // bucando a conecao pendurada na requisicao, que foi incluida pelo
    // FiltroChain
    Connection connection = (Connection) req.getAttribute("conexao");

    // passando a conexao para o DAO e jah chamando um de seus metodos
    new ContatoDAO(connection).adiciona(contato);

    return "mvc?logica=ListaContatosLogic";
  }
  @Override
  public String executa(HttpServletRequest req, HttpServletResponse res) throws Exception {

    long id = Long.parseLong(req.getParameter("id"));
    String nome = req.getParameter("nome");
    String email = req.getParameter("email");
    String endereco = req.getParameter("endereco");
    String dataEmTexto = req.getParameter("dataNascimento");
    Calendar dataNascimento = null;

    Date date = null;
    try {
      date = new SimpleDateFormat("dd/MM/yyyy").parse(dataEmTexto);
    } catch (ParseException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }
    dataNascimento = Calendar.getInstance();
    dataNascimento.setTime(date);

    Contato contato = new Contato();

    if (req.getParameter("id").isEmpty()) {

      contato.setNome(nome);
      contato.setEmail(email);
      contato.setEndereco(endereco);
      contato.setDataNascimento(dataNascimento);

      Connection connection = (Connection) req.getAttribute("conexao");

      ContatoDao dao = new ContatoDao(connection);

      dao.adiciona(contato);

      System.out.println("Alterando contato...");

      return "mvc?logica=ListaContatoLogic";
    } else {
      contato.setId(id);
      contato.setNome(nome);
      contato.setEmail(email);
      contato.setEndereco(endereco);
      contato.setDataNascimento(dataNascimento);

      Connection connection = (Connection) req.getAttribute("conexao");

      ContatoDao dao = new ContatoDao(connection);
      dao.altera(contato);

      System.out.println("Alterando contato...");

      // TODO Auto-generated method stub
      return "mvc?logica=ListaContatoLogic";
    }
  }
  /** @param args */
  public static void main(String[] args) {

    ContatoDAO dao = new ContatoDAO();
    List<Contato> contatos = dao.getLista();
    SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MMMM/yyyy");
    for (Contato contato : contatos) {
      System.out.println("Nome: " + contato.getNome());
      System.out.println("Email: " + contato.getEmail());
      System.out.println("Endereço: " + contato.getEndereco());
      System.out.println(
          "Data Nascimeto: " + dateFormat.format(contato.getDataNascimento().getTime()) + "\n");
    }
  }