problema connessione db java

  • Creatore Discussione Creatore Discussione tony1
  • Data di inizio Data di inizio

tony1

Utente Attivo
8 Ago 2010
32
0
0
Sto provando a utilizzare una connessione a un database mysql con java.Per caricare il driver uso questa:
Class.forName ("com.mysql.jdbc.Driver").newInstance ();

L'errore che mi dà però è che non trova la classe.Sto utilizzando netbeans.
 
Questo è il listato:
Codice:
import java.sql.*;
import javax.sql.*;
import java.awt.*;
import java.awt.event.*;

   public class Database
   {
       public static void main (String[] args)
       {
           Connection conn = null;

           try
           {
               
               String url = "jdbc:mysql://localhost/rubrica";
               Class.forName ("com.mysql.jdbc.Driver").newInstance ();
               conn = DriverManager.getConnection (url, "root", "ciccione");
               System.out.println ("Database connection established");
           }
           catch (Exception e)
           {
               System.err.println ("Cannot connect to database server");
               e.printStackTrace();
           }
           finally
           {
               if (conn != null)
               {
                   try
                   {
                       conn.close ();
                       System.out.println ("Database connection terminated");
                   }
                   catch (Exception e) { /* ignore close errors */ }
               }
           }
       }
   }
Oltretutto mi sono scaricato mysqlconnector/J e ho messo la cartella nella directory di netbeans e ho impostato il classpath.Però continua a non funzionare.
 
Scusatemi per il ritardo.Alla fine sono riuscito a fare la connessione.Ora sto provando a inserire dei dati nella tabella del db tramite delle text.Però mi dà errore.Posto il codice per comodità:
Codice:
import java.sql.*;
import javax.sql.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.*;


   public class Database2 extends JFrame implements ActionListener
   {
       JButton in=new JButton("Inserisci");
       JLabel n=new JLabel("Nome");
       JTextField nome=new JTextField(5);
       JLabel c=new JLabel("Cognome");
       JTextField cognome=new JTextField(5);
       JLabel t=new JLabel("Telefono");
       JTextField telefono=new JTextField(5);
       private Connection d; 
      String a,b,y,x;
            
       
       public Database2(){
           super("Database");
           setSize(200,200);
           setSize(200,200);
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        GridLayout g=new GridLayout(4,2);
        JPanel pane=new JPanel();
        pane.setLayout(g);
        pane.add(n);
        pane.add(nome);
        pane.add(c);
        pane.add(cognome);
        pane.add(t);
        pane.add(in);
        pane.add(telefono);
        setContentPane(pane);
        setVisible(true);
       nome.addActionListener(this);
       cognome.addActionListener(this);
       telefono.addActionListener(this);
       in.addActionListener(this);
        
       }
       
       public void connetti(){
         try{  
           Statement stmt = null;
               Connection conn=null;
               String url = "jdbc:mysql://localhost/rubrica";
               Class.forName ("com.mysql.jdbc.Driver").newInstance ();
               d = DriverManager.getConnection (url, "root", "ciccione");
               System.out.println ("Database connection established");
         }catch (Exception e){
             e.getMessage();
         }
           
       }
       public static void main (String[] args)
       {
        Database2 d1=new Database2();
          d1.connetti();
         //d1.eseguiAggiornamento(); 
       }    
           
public void eseguiAggiornamento() {
     String query= "insert into nome values('"+nome.getText()+"','"+cognome.getText()+"',"+telefono.getText()+");"; 
     Statement stmt = null;
      int numero = 0;
      boolean risultato = false;
      try {
          stmt = d.createStatement();
         numero = stmt.executeUpdate(query);
         risultato = true;
         stmt.close();
         
      } catch (SQLException e) {
         e.printStackTrace();
         e.getMessage();
         risultato = false;
         
      }
     
   }

public void actionPerformed(ActionEvent e){
    
    Database2 c1=new Database2();
    a=nome.getText();
    b=cognome.getText();
    x=telefono.getText();
    Object source=e.getSource();
    if(source==in)
    c1.eseguiAggiornamento();
    }
   }

A quanto pare c'è una NullPointerException.Ma non riesco a capire quale oggetto è nullo!
 

Discussioni simili