Bom dia!
Primeiramente gostaria de pedir desculpas pela minha pergunta primária e boba, mas procurei em diversos fóruns como fazer isso, testei e não deu certo. Com certeza estou deixando passar algo importante. Se alguém puder me ajudar ficaria muiiiiito grata!
Estou usando mysql, tomcat e eclipse. Montei um jsp com um form para pegar o que o usuário digitar, e um servlet que mostra na tela o que o usuário digitou. Até aqui esta ok. Porém ele não salva no banco de dados o que foi digitado. Como faço para fazer isso?
cadmunic.jsp
<!DOCTYPE html
PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "<a target="_blank" href="http://www.w3.org/TR/html4/loose.dtd">">http://www.w3.org/TR/html4/loose.dtd"></a>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title> Cadastro de Município </title>
</head>
<body>
<center> <table align="center">
<tr>
<td> <h1> Cadastro de Município </h1> </td> </tr> </table> </center> <form action="ServletMunic" method="get">
<table align="center">
<tr> <td > Código IBGE: </td> <td align="left"> <input type="text" name="idmunicipio" maxlength="10"> </td> </tr>
<tr> <td > Estado: </td> <td align="left"> <input type="text" name="ufmunicipio" maxlength="10">
<tr> <td > Município: </td> <td> <input type="text" name="nomemunicipio" maxlength="50"> </td> </tr>
<tr> <td > <p align="center"> <input type="submit" value="Enviar"> <input type="reset" value="Cancela"> </p> </td> </tr>
</table>
</form>
</body>
</html>
_____________________________________________________________
ServletMunic.java
package sistematizacao.dao;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class ServletMunic extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 1L;
/**
*
*/
protected void service (HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
PrintWriter out = response.getWriter();
response.setContentType("text/html;charset=UTF-8");
int idmunicipio= Integer.parseInt(request.getParameter("idmunicipio").toString());
String nomemunicipio = request.getParameter("nomemunicipio");
String ufmunicipio = request.getParameter("ufmunicipio");
String msg= "
O Município " + nomemunicipio + " pertencente ao estado " + ufmunicipio +
" foi cadastrado com sucesso no código de IBGE " + idmunicipio;
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet</title>");
out.println("</head>");
out.println("<body><center>");
out.println("<h1>Cadastro de Município</h1>
<hr>");
out.println(msg);
out.println("</br>");
out.println("</br> <a href='CadMunic.jsp'> Voltar </a>");
out.println("</center></body>");
out.println("</html>");
out.close();
}
}
__________________________________________________________
MunicDAO.java
package sistematizacao.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class MunicDAO {
private int idmunicipio;
private String nomemunicipio;
private String ufmunicipio;
public MunicDAO(int idmunicipio, String nomemunicipio, String ufmunicipio ){
this.idmunicipio = idmunicipio;
this.nomemunicipio = nomemunicipio;
this.ufmunicipio = ufmunicipio;
}
public boolean verificaMunic() throws Exception{
VerificarMunicDAO dao = new VerificarMunicDAO();
return dao.isOk();
}
public void inserirMunic() throws Exception{
if(verificaMunic()) return;//
InserirMunicDAO dao = new InserirMunicDAO();
dao.executeSQL();
}
class VerificarMunicDAO extends TemplateDAO{
private Boolean ok; //
@Override
public PreparedStatement createAndExecuteStatement(Connection c) throws Exception {
PreparedStatement ps = c.prepareStatement(
"SELECT * FROM municipio WHERE idmunicipio = ? AND nomemunicipio = ? AND ufmunicipio = ? ");
ps.setInt(1, getIdmunicipio());
ps.setString(2, getNomemunicipio());
ps.setString(3, getUfmunicipio());
ResultSet rs = ps.executeQuery();
this.ok = rs.next();//
rs.close();
return ps;
}
public boolean isOk() throws Exception{
if(ok==null){
executeSQL();
}
return ok;
}
}
// INNER CLASS (CLASSE INTERNA)
class InserirMunicDAO extends TemplateDAO{
@Override
public PreparedStatement createAndExecuteStatement(Connection c) throws Exception {
PreparedStatement ps = c.prepareStatement(
" INSERT INTO municipio(idmunicipio,nomemunicipio, ufmunicipio) VALUES (?,?,?) ");
ps.setInt(1, getIdmunicipio());
ps.setString(2, getNomemunicipio());
ps.setString(3, getUfmunicipio());
ps.executeUpdate();
return ps;
}
}
public int getIdmunicipio() {
return idmunicipio;
}
public void setIdmunicipio(int idmunicipio) {
this.idmunicipio = idmunicipio;
}
public String getNomemunicipio() {
return nomemunicipio;
}
public void setNomemunicipio(String nomemunicipio) {
this.nomemunicipio = nomemunicipio;
}
public String getUfmunicipio() {
return ufmunicipio;
}
public void setUfmunicipio(String ufmunicipio) {
this.ufmunicipio = ufmunicipio;
}
}
_______________________________________________________
Template.DAO
package sistematizacao.dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public abstract class TemplateDAO {
static{ //Registro do driver
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
}catch (Exception e) {
System.out.println("Erro ao registrar Driver!");
e.printStackTrace();
}
}
public void executeSQL(){
Connection c = null;
PreparedStatement ps = null;
try{
String url = "jdbc:mysql://localhost:3306/Sistematizacao";
c = DriverManager.getConnection(url,"root",null);
ps = createAndExecuteStatement(c);
}catch (Exception e) {
System.out.println("Erro ao executar SQL");
e.printStackTrace();
}finally{
try {
if(c!=null) c.close();
if(ps!=null)ps.close();
} catch (SQLException e) {
System.out.println("Erro ao finalizar operação SQL");
e.printStackTrace();
}
}
}
public abstract PreparedStatement createAndExecuteStatement(Connection c) throws Exception;
}
Grata,
Aline Alves