Não domino bem ainda, contudo, lembro de algo interessante nestas conexões aos bancos de dados… pelo meno… não sei se é só no MySQL mas foi me dito pra sempre… após conectar à um banco eu deveria recuar um registro… pois, O Poneiro sempre está posicionado no primeiro e há casos que se faz necessário posionál-lo em “antes do primeiro registro”, Provavelmente é o seu caso… NullPointer… tente deslocar o ponteiro para início ou fim da tabela conforme a necessidade…
Espero ter ajudado de alguma forma… Abraços…
Por algum motivo o seu objeto stmt (Statement) está nulo durante a execução do método Insert. Mas não deu para perceber o porquê.
A propósito, no padrão Java, os nomes de métodos iniciam em minúsculo (padrão Camel Case Low). Exemplo: insert(), inserirRegistro(), consultarCadastro().
packagebanco;importjava.sql.*;importjava.util.*;importjavax.swing.*;/** * * @author Tiago */publicclassconexao{publicStatementstmt;publicResultSetrs;Connectionconnection;//instância do objeto de conexãopublicconexao(){try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");// O sun.jdbc.odbc.JdbcOdbcDriver significa que será usado um banco accessStringurl="jdbc:odbc:images";// esta string carrega o nome da fonte de dadosconnection=DriverManager.getConnection(url,"","");// aqui é efetuada conexão passando?se a fonte de dados e o login e senha do banco, que neste caso não existem.stmt=connection.createStatement();JOptionPane.showMessageDialog(null,"COnexao com sucessso");// é exibida uma mensagem informando que a conexão foi efetuada}catch(ClassNotFoundExceptioncnfex){System.err.println("Falha ao carregar o JDBC/ODBC driver.");System.exit(0);}catch(SQLExceptionex){System.out.println("SQLException: "+ex.getMessage());System.out.println("SQLState: "+ex.getSQLState());System.out.println("VendorError: "+ex.getErrorCode());}}publicvoidshutDown(){// este método cancela a conexãotry{connection.close();}catch(SQLExceptionsqlex){System.err.println("Não foi possível desconectar");}}publicResultSetList(Stringsql){try{rs=stmt.executeQuery(sql);returnrs;}catch(SQLExceptione){System.out.println("Erro na consulta:"+e.getMessage());}returnrs;}publicStringInsert(Stringsql){try{stmt.executeUpdate(sql);return"Inserido com Sucesso";}catch(SQLExceptione){System.out.println("Erro na inserção:"+e.getMessage());return"Falha ao inserir";}}publicStringdelete(Stringsql){try{stmt.executeUpdate(sql);return"Deletado com sucesso";}catch(SQLExceptione){System.out.println("Erro na inserção:"+e.getMessage());return"Falha ao deletar";}}publicStringUpdate(Stringsql){try{stmt.executeUpdate(sql);return"Atualização feita com sucesso";}catch(SQLExceptione){System.out.println("Erro na inserção:"+e.getMessage());return"Atualizção falhou";}}
e fica dando esse erro aki :
org.apache.jasper.JasperException:ExceptioninJSP:/index.jsp:3431:Stringurll=request.getParameter("urll");32:Stringlegenda=request.getParameter("legenda");33:34:Stringa=conecta.Insert("INSERT INTO Fotos (tx_endereço, tx_legenda) VALUES('"+urll+"','"+legenda+"')");35:36:conecta.shutDown();37:Stacktrace:org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:451)org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)javax.servlet.http.HttpServlet.service(HttpServlet.java:803)rootcausejava.lang.NullPointerExceptionbanco.conexao.Insert(conexao.java:93)org.apache.jsp.index_jsp._jspService(index_jsp.java:74)org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)javax.servlet.http.HttpServlet.service(HttpServlet.java:803)org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
nao sei resolver fica dando nullpointer onde ta nulo a ponteiro q eu nao sei