Polaczenie z DB-Derby maly problem

0

Czesc mam maly ze sterownikiem do bazy danych kod ktory wklejam jest z ksiazki Java Techniki zaawansowane. Napisane jest aby go uruchomic nalezy uruchomic baze danych a nastepnie uruchomic ponizszy program z wiersza polecen podaja tam rowniez nazwe sterownika (derbyclient.jar). Program ten chcialbym odpalic z netbeansa i mam problem gdyz po polaczeniu z baza niewiem jak go odpalic zeby podac mu nazwe sterownika

package dbtest;


import java.sql.*;
import java.io.*;
import java.util.*;

/**
 * This program tests that the database and the JDBC driver are correctly configured.
 * @version 1.01 2004-09-24
 * @author Cay Horstmann
 */
class TestDB
{
   public static void main(String args[])
   {
      try
      {
         runTest();
      }
      catch (SQLException ex)
      {
         for (Throwable t : ex)
            t.printStackTrace();
      }
      catch (IOException ex)
      {
         ex.printStackTrace();
      }
   }

   /**
    * Runs a test by creating a table, adding a value, showing the table contents, and removing the
    * table.
    */
   public static void runTest() throws SQLException, IOException
   {
      Connection conn = getConnection();
      try
      {
         Statement stat = conn.createStatement();

         stat.executeUpdate("CREATE TABLE Greetings (Message CHAR(20))");
         stat.executeUpdate("INSERT INTO Greetings VALUES ('Hello, World!')");

         ResultSet result = stat.executeQuery("SELECT * FROM Greetings");
         if (result.next())
            System.out.println(result.getString(1));
         result.close();
         stat.executeUpdate("DROP TABLE Greetings");
      }
      finally
      {
         conn.close();
      }
   }

   /**
    * Gets a connection from the properties specified in the file database.properties
    * @return the database connection
    */
   public static Connection getConnection() throws SQLException, IOException
   {
      Properties props = new Properties();
      FileInputStream in = new FileInputStream("database.properties");
      props.load(in);
      in.close();

      String drivers = props.getProperty("jdbc.drivers");
      if (drivers != null) System.setProperty("jdbc.drivers", drivers);
      String url = props.getProperty("jdbc.url");
      String username = props.getProperty("jdbc.username");
      String password = props.getProperty("jdbc.password");

      return DriverManager.getConnection(url, username, password);
   }
}

Rzuca nastepujace wyjatki:
java.sql.SQLException: No suitable driver found for jdbc:derby://localhost:1527/COREJAVA;create=true
        at java.sql.DriverManager.getConnection(DriverManager.java:602)
        at java.sql.DriverManager.getConnection(DriverManager.java:185)
        at dbtest.TestDB.getConnection(Main.java:83)
        at dbtest.TestDB.runTest(Main.java:46)
        at dbtest.TestDB.main(Main.java:27)

0

Ja też nie wiem.

0

Ze strony http://db.apache.org/derby sciagnij paczke z najnowszym wydaniem (na ten moment: db-derby-10.5.1.1-lib.zip). Wypakuj derbyclient.jar i, z poziomu okna wlasciwosci, podepnij go do bibliotek Swojego projektu. Powinno ruszyc.

0

WS dzieki ci wielkie. O to wlasnie chodzilo :-) Wszystko dziala :)

zapytam jeszcze w przypadku mysql mam sciagniety driver tylko w pliku database.properties musze zmienic konfiguracje odpowiednia dla mysql'a gdzie moge to znaleŹĆ?

0

Chodzi o to, gdzie mozna znalezc plik database.properties? Jesli kod, ktory wkleiles dziala w NetBeans, to plik ten powinien byc w katalogu glownym projektu. Jezeli uruchamiasz program recznie, to plik ten znajduje sie w tym samym miejscu, co Twoje archiwum aplikacji (plik .jar). Interesuja Cie co najmniej wlasciwosci: jdbc.drivers i jdbc.url.
Pozdr.

0

Dzieki znalazlem Url na jaki nalezalo zmienic i wszystko gra :-)

1 użytkowników online, w tym zalogowanych: 0, gości: 1