Nawiązywanie połączenia z bazą danych 1. Aby nawiązać
Transkrypt
Nawiązywanie połączenia z bazą danych 1. Aby nawiązać
Nawiązywanie połączenia z bazą danych 1. Aby nawiązać połączenie z bazą danych Firebird, musimy posiadać sterownik JDBC o nazwie Jaybird. Można go pobrać ze strony http://www.firebirdsql.org/en/jdbc-driver/ . 2. Przykład połączenia z bazą danych. import import import import import java.sql.DriverManager; java.sql.Connection; java.sql.ResultSet; java.sql.SQLException; java.sql.Statement; public class PolaczeniePrzyklad{ public static void main(String[] args) { Connection connection = null; ResultSet resultSet = null; Statement statement = null; try { Class.forName("org.firebirdsql.jdbc.FBDriver"); connection = DriverManager.getConnection("jdbc:firebirdsql://localhost:3050/C:/Program Files/Firebird/Firebird_2_5/examples/empbuild/employee.fdb","sysdba", "masterkey"); statement = connection.createStatement(); resultSet = statement.executeQuery("SELECT * FROM employee"); while (resultSet.next()) { System.out.println("Nazwisko pracownika:"+ resultSet.getString("LAST_NAME")); System.out.println("Wynagrodzenie:"+ resultSet.getDouble(10)); System.out.println("Wynagrodzenie:"+ resultSet.getDouble("SALARY")); } } catch (SQLException e) { e.printStackTrace(); } catch (ClassNotFoundException e){ e.printStackTrace(); }finally { try { connection.close(); } catch (SQLException e) { e.printStackTrace(); } } } } 3. Archiwum JAR ze sterownikiem musimy dołączyć do naszego projektu. Możemy to zrobić już na etapie tworzenia projektu. Klikając przycisk Next w oknie Create a Java Project przejdziemy do okna Java Settings. Tu wybieramy zakładkę Libraries. Następnie klikamy na przycisk Add External JARs i wybieramy archiwum JAR z naszym sterownikiem. 4. Wykorzystanie klasy DBTable – archiwum JAR pobieramy ze strony http://quicktablejava.appspot.com/download.html import javax.swing.*; import quick.dbtable.*; import java.sql.*; //przykład użycia klasy DBTable do prezentacji zawartości bazy - http://quicktablejava.appspot.com/home.html public class Okno extends JFrame { public Okno() { setSize(500, 500); setVisible(true); // tworzymy tabelę klasy quicktable quick.dbtable.DBTable dBTable1 = new quick.dbtable.DBTable(); this.getContentPane().add(dBTable1); // ustawiamy odpowiedni sterownik jdbc-odbc dBTable1.setDatabaseDriver("org.firebirdsql.jdbc.FBDriver"); // tworzymy połączenie z bazą danych try { Class.forName("org.firebirdsql.jdbc.FBDriver"); Connection connection = null; connection = DriverManager .getConnection( "jdbc:firebirdsql://localhost:3050/C:/Program Files/Firebird/Firebird_2_5/examples/empbuild/employee.fdb", "sysdba", "masterkey"); dBTable1.setConnection(connection); } catch (Exception e) { e.printStackTrace(); } // ustawiamy zapytanie, które będzie przetwarzane przez tablicę double zarobki=40000; String zapytanie = "select first_name, last_name as Nazwisko, salary from employee where salary<"+zarobki; dBTable1.setSelectSql(zapytanie); // tworzymy panel nawigacji tablicy // poprzez parametr możemy wskazać jakie przyciski pojawią się w // nawigacji. dBTable1.createControlPanel(DBTable.READ_NAVIGATION); try { //na podstawie zapytania tworzony jest model kolumn //kolumny numerowane są od 0 dBTable1.createColumnModelFromQuery(); //modyfikujemy własności kolumn Column c=dBTable1.getColumn(2); c.setWidth(100); c.setReadOnly(true); //nagłówek kolumny możemy również ustalić na etapie zapytania jak dla kolumny nazwisko c.setHeaderValue("Zarobki"); c.setPreferredWidth(100); c=dBTable1.getColumn(0); // nie ma problemu z polskimi znakami c.setHeaderValue("Imię"); // pobieramy dane z bazy do wypełnienia tablicy dBTable1.refresh(); } catch (SQLException e) { e.printStackTrace(); } } } public static void main(String[] args) { // create a new table frame Okno myframe = new Okno(); }