Zielony Smok - logo witryny

Pobieranie atrybutów połączeń

Atrybuty połączeń możemy pobierać jako stringi (łańcuchy znaków), jako obiekty klasy Properties podawane bezpośrednio albo wczytywane z pliku.

W każdym przypadku używamy odpowiedniej metody DriverManager.getConnection().

Jeśli podamy atrybut i jako String i jako obiekt Properties zastosowany zostanie atrybut podany jako String.

Atrybuty jako String

Connection con = DerbyUtil.connectEmbeddedDB(baza, ";create=true");

Przykład w klasie R032A.

Klasa R032A.java
package aderby.start;

import aderby.DerbyUtil;

import java.sql.*;

public class R032A {
    private static final String baza = "C:/Przyklady/r032A";

    public static void main(String[] args) {
        DerbyUtil.startDerbyEngine(DerbyUtil.embdriver);
        Connection con = DerbyUtil.connectEmbeddedDB(baza, ";create=true");
        DerbyUtil.close(con);
        DerbyUtil.shutdownEmbeddedDB(baza);
        DerbyUtil.shutdownDerbyEngine();
    }
}

Atrybuty jako obiekt Properties

Properties props = new Properties();
props.put("create", "true");
Connection con = DerbyUtil.connectEmbeddedDB(baza, props);

Przykład w klasie R032B.

Klasa R032B
package aderby.start;

import aderby.DerbyUtil;

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

public class R032B {
    private static final String baza = "C:/Przyklady/r032B";

    public static void main(String[] args) {
        Properties props = new Properties();
        props.put("create", "true");
        DerbyUtil.startDerbyEngine(DerbyUtil.embdriver);
        Connection con = DerbyUtil.connectEmbeddedDB(baza, props);
        DerbyUtil.close(con);
        DerbyUtil.shutdownEmbeddedDB(baza);
        DerbyUtil.shutdownDerbyEngine();
    }
}

Atrybuty w pliku *.properties

Properties props = new Properties();
FileInputStream fis = new FileInputStream("aderby/src/resources/props/r032.properties");
props.load(fis);
...
Connection con = DerbyUtil.connectEmbeddedDB(baza, props);

Przykład w klasie R032C.

Klasa R032C.java
package aderby.start;

import aderby.DerbyUtil;

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

public class R032C {
    private static final String baza = "C:/Przyklady/r032C";

    public static void main(String[] args) {
        FileInputStream fis = null;
        Properties props = new Properties();
        try {
            fis = new FileInputStream("aderby/src/resources/props/r032.properties");
        } catch (FileNotFoundException e1) {
            e1.printStackTrace();
        }
        try {
            props.load(Objects.requireNonNull(fis));
        } catch (IOException e) {
            e.printStackTrace();
        }
        DerbyUtil.startDerbyEngine(DerbyUtil.embdriver);
        Connection con = DerbyUtil.connectEmbeddedDB(baza, props);
        DerbyUtil.close(con);
        DerbyUtil.shutdownEmbeddedDB(baza);
        DerbyUtil.shutdownDerbyEngine();
    }
}
Plik r032.properties
#Atrybuty połączeń
#Sun Jul 02 11:15:45 CEST 2017
create=true

Pliki do ściągnięcia

Aktualny (tworzony narastająco) plik module-info.java

Aktualny (tworzony narastająco) plik DerbyUtil.java

Pliki tworzone narastająco zastępują poprzednie pliki o tej samej nazwie i działają dla wszystkich wcześniej opublikowanych przykładów we wszystkich wpisach w projekcie. W przypadku pliku module-info.java może być potrzebne skreślenie niepotrzebnych wpisów.