PDA

View Full Version : [JAVA] Connessione al database


DrZoidberg
01-06-2006, 22:12
Salve....ho un problema! Ho un problema con un programmino Java.
Il programma in questione si connette ad un database , estrae delle informazioni che concatena ad una stringa , e poi "dovrebbe" stampare in output la stringa.
Il programma viene compilato , ma quando lo eseguo mi appare il seguente errore: Exception in thread "main" in java.lang.NoClassDefFoundError: prova

Da cosa dipende?
Se volete vi incollo il testo del programma...

Grazie

dupa
02-06-2006, 10:28
Salve....ho un problema! Ho un problema con un programmino Java.
Il programma in questione si connette ad un database , estrae delle informazioni che concatena ad una stringa , e poi "dovrebbe" stampare in output la stringa.
Il programma viene compilato , ma quando lo eseguo mi appare il seguente errore: Exception in thread "main" in java.lang.NoClassDefFoundError: prova

Da cosa dipende?
Se volete vi incollo il testo del programma...

Grazie

Usi jar esterni che contengono le classi del programma?
Sicuro che vengano caricati assieme al tuo programma?
Se lo lanci da linea di comando devi smazzarti il parametro classpath o qualcosa di simile.

ciao

DrZoidberg
02-06-2006, 13:22
Non uso jar esterni....
Vi copio il programma...vediamo se qualcuno mi aiuta e mi dice cosa c'č che nn va!
import java.io.* ;
import java.util.* ;
import java.sql.* ;

public class prova {
void preleva() throws SQLException{

String msg=null;
String connectionURL = "jdbc:mysql://localhost:3306/eventi";
Connection connection = null;
Statement statement = null;
ResultSet resultSet = null;
try {
Class.forName("com.mysql.jdbc.Driver");
// connessione al database
connection = DriverManager.getConnection(connectionURL);
// crea Statement per la query
statement = connection.createStatement();
// query
String query="SELECT Titolo,Cittā,Luogo FROM DiarioEventi";
resultSet = statement.executeQuery(query);
//elabora i risultati della query
while(resultSet.next()) {
String titolo = resultSet.getString(1);
String cittā = resultSet.getString(2);
String luogo = resultSet.getString(3);
String sep="**";
msg=msg+sep+titolo+cittā+luogo+sep;
}
}//fine del try
catch ( SQLException e ) {
System.err.println("SQL Probelm: "+e.getMessage());
System.err.println("SQL State: "+e.getSQLState());
System.err.println("Error: "+e.getErrorCode());
System.exit(1);
}

catch ( ClassNotFoundException e ) {
System.err.println("Non trovo il driver "+e.getMessage());
}
finally {
try {
if (connection!=null) connection.close();
}
catch(SQLException e) {
System.err.println(e.getMessage());
}
}
System.out.println(msg);
}
}

sottovento
03-06-2006, 12:34
Effettivamente, come dice il compilatore, non hai scritto alcun metodo main(), quindi non puo' trovarlo.
Tutto corretto, insomma. Ti basta definire il mail al solito modo (per inciso:
public static void main (String[] args)
)
e chiamare il tuo metodo da qui

High Flying
Sottovento

dupa
03-06-2006, 12:49
Non uso jar esterni....
Vi copio il programma...vediamo se qualcuno mi aiuta e mi dice cosa c'č che nn va!


Se usi MySQL devi importare il jar che implementa il driver jdbc

DrZoidberg
04-06-2006, 21:47
Effettivamente, come dice il compilatore, non hai scritto alcun metodo main(), quindi non puo' trovarlo.
Tutto corretto, insomma. Ti basta definire il mail al solito modo (per inciso:
public static void main (String[] args)
)
e chiamare il tuo metodo da qui

High Flying
Sottovento

:doh: Hai ragione....il main!!!! :doh: