Ciao. Ma il metodo service non dovrebbe essere sovrascritto; da quanto ne so, infatti, il metodo service() viene richiamato automaticamente quando arriva una richiesta alla servlet; esso, poi, in base al tipo di richiesta ( tanto per intenderci se è una richiesta di tipo POST oppure di tipo GET ) richiama il metodo giusto ( rispettivamente doPost oppure doGet ); penso che, sovrascrivendo il metodo service() e, quindi, avendone fatto l'overriding hai perso la sua funzionalità di richiamare il metodo doGet oppure doPost. Supponendo che faccia una richiesta di tipo GET io farei in questo modo:
Codice PHP:
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.sql.*;
public class Insert extends HttpServlet
{
public void init()
{
System.out.println("<<<[ Insert inizializzata ]>>>");
}
public void doGet(HttpServletRequest request, HttpServletResponse response)throws IOException
{
String nome = request.getParameter("nome");
String cognome = request.getParameter("cognome");
Connection con =null;
Statement sta = null;
try
{
Class.forName("org.gjt.mm.mysql.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost/micro","root","root");
sta = con.createStatement();
sta.executeUpdate("INSERT INTO anagrafica VALUES('','"+nome+"','"+cognome+"');");
PrintWriter out = response.getWriter();
response.setContentType("text/plain");
out.print("Parametri inseriti\nnome: " + nome +"\ncognome: " + cognome);
}catch(Exception e)
{
System.out.println(e);
}finally
{
try
{
if(sta!=null)sta.close();
if(con!=null)con.close();
}catch(Exception e)
{
System.out.println(e);
}
}
}
}
Per quanto riguarda il driver verso MySql mi sembra quello giusto. Ciao