Enviar dados pro BD - SERVLET

Aprender sozinho pela internet é bem difícil, por isso peço a ajuda de vcs… :smiley:

To tentando fazer o seguinte: Efetuar a leitura dos dados cadastrados no BD phpmyadmin
através de um servlet e salvar os dados no BD;
NESSE CASO, QUERO DAR SELECT E INSERT.
Tentei fazer com o insert, masn ão sei que tem de errado.

**Esse é meu html pra enviar os dados:**

Tenho todas essas classes funcionando corretamente sem ser no servlet: Contato, ConexaoFaxtory, ContatoDao e ContatoTeste;
O PROBLEMA É QUE EU INSIRO OS DADOS E NÃO ME APARACE A MSG DE ENVIO QUE COLOQUEI NO doPost, E NEM RECEBO OS NOVOS DADOS NO MEU BD; E QUANDO EU CLICO EM CADASTRAR, FICA TUDO BRANCO;

Minha classe Servlet:

package servlet;

import java.io.IOException;
import java.io.PrintWriter;

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 negocio.Contato;
import repositorio.ContatoDao;

/**

  • Servlet implementation class AdicionaContatoServlet
    */
    @WebServlet("/cliente") //mudado
    public class AdicionaContatoServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;

    /**

    • @see HttpServlet#HttpServlet()
      */
      public AdicionaContatoServlet() {
      super();
      // TODO Auto-generated constructor stub
      }

    /**

    • @see HttpServlet#service(HttpServletRequest request, HttpServletResponse response)
      */
      protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
      // TODO Auto-generated method stub

    }

    /**

    • @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
      */
      protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
      // TODO Auto-generated method stub

      response.getWriter().append("Served at: ").append(request.getContextPath());
      }

    /**

    • @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
      */
      protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
      // TODO Auto-generated method stub
      PrintWriter out = response.getWriter();

      String nome = request.getParameter(“nome”);
      String email = request.getParameter(“email”);
      int idade = Integer.parseInt(request.getParameter(“idade”));

      Contato contato = new Contato();

      contato.setNome(nome);
      contato.setEmail(email);
      contato.setIdade(idade);

      ContatoDao dao = new ContatoDao();

      dao.inserir(contato);

      out.println("");
      out.println("");
      out.println(“Cadastro Realizado com Sucesso!”);
      out.println("");
      out.println("");

      response.getWriter().print("Metodo POST enviou o email : " + email);

      doGet(request, response);
      }

}

**Minha ContatoDao: **
OBS: ESSA CLASSE FUNCIONA PERFEITAMENTE;

package repositorio;

import java.sql.*;

import java.util.*;

import javax.swing.JOptionPane;

import com.mysql.jdbc.PreparedStatement;

import negocio.Contato;

public class ContatoDao {

private Connection con = null;

public ContatoDao() {
	this.con = new ConexaoFactory().getConnection();
}

public void inserir(Contato contato) {
	String sql = "INSERT INTO cliente(nome,email,idade) VALUES(?,?,?)";


try {
	PreparedStatement stmt = (PreparedStatement) con.prepareStatement(sql);
	
	stmt.setString(1, contato.getNome());
	stmt.setString(2, contato.getEmail());
	stmt.setInt(3, contato.getIdade());
	
	stmt.execute();
	stmt.close();
	
	JOptionPane.showMessageDialog(null, "Gravado com sucesso!");
	
}catch (SQLException e) {
	//throw new RuntimeException(e);
	JOptionPane.showMessageDialog(null, "Erro ao tentar gravar no BD"+e);
}

}//Fim adiciona

public void atualizar(Contato contato) {
	
	String sql = "UPDATE cliente SET nome = ?,email = ?,idade = ? WHERE id = ?";


try {
	PreparedStatement stmt = (PreparedStatement) con.prepareStatement(sql);
	
	stmt.setString(1, contato.getNome());
	stmt.setString(2, contato.getEmail());
	stmt.setInt(3, contato.getIdade());
	stmt.setInt(4, contato.getId());
	stmt.executeUpdate();
	stmt.close();
	
	JOptionPane.showMessageDialog(null, "Atualizado com sucesso!");
	System.out.println("Atualizado com Sucesso!");
	
}catch (SQLException e) {
	//throw new RuntimeException(e);
	JOptionPane.showMessageDialog(null, "Erro ao tentar atualizar no BD"+e);
}

}//Fim atualiza

///////////////////////////////
public void excluir(Contato contato) {
	String sql = "DELETE FROM cliente WHERE id = ?";


try {
	PreparedStatement stmt = (PreparedStatement) con.prepareStatement(sql);
	
	//stmt.setString(1, contato.getNome());
	//stmt.setString(2, contato.getEmail());
	//stmt.setInt(3, contato.getIdade());
	stmt.setInt(1, contato.getId());
	stmt.executeUpdate();
	stmt.close();
	
	JOptionPane.showMessageDialog(null, "Excluído com sucesso!");
	System.out.println("Excluído com Sucesso!");
	
}catch (SQLException e) {
	//throw new RuntimeException(e);
	JOptionPane.showMessageDialog(null, "Erro ao tentar excluir dado no BD"+e);
}

}//Fim exclui


public List<Contato> getLista() {
	
	List<Contato> contatos = new ArrayList<Contato>();
	String sql = "SELECT * FROM cliente";
	
	try {
		PreparedStatement stmt = (PreparedStatement) con.prepareStatement(sql);
		ResultSet rs =  stmt.executeQuery();
		
		

		while(rs.next()) {
			Contato contato = new Contato();
			
			
			contato.setNome(rs.getString("nome"));
			contato.setEmail(rs.getString("email"));
			contato.setIdade(rs.getInt("idade"));
			contato.setId(rs.getInt("id"));
			
			contatos.add(contato);
		}
		rs.close();
		stmt.close();

		return contatos;


		
	}catch(SQLException e) {
		JOptionPane.showMessageDialog(null, "Erro ao dar Select o BD\n"+e);
		throw new RuntimeException(e);
	}
	
	//return contatos;


}

}//Fim ContatoDao

Olá, Douglas,

Você reparou que está inserindo apenas o nome no html?
Provavelmente dará nullpoint, pois as propriedades não foram preenchidas.