Рассмотрите встроенную базу данных как полноценную базу данных, которая вместо того, чтобы находиться в другой среде, и, возможно, требует подключения к сети, упакована вместе с вашим приложением и работает в той же JVM.Те же механизмы применяются к двум.
Встроенный драйвер Derby находится внутри файла derby.jar
, поэтому его необходимо указать в classpath вашего приложения.Он должен быть расположен в %DERBY_INSTALL%\lib\
, где %DERBY_INSTALL%
- каталог установки.Вы можете видеть на изображении, где оно содержится.
![enter image description here](https://i.stack.imgur.com/Jh8X8.png)
Из Oracle
ЛюбойДрайверы JDBC 4.0, найденные в вашем пути к классам, загружаются автоматически.(Однако вы должны вручную загрузить все драйверы до JDBC 4.0 с помощью метода Class.forName.)
Это означает, что если драйвер Derby является драйвером JDBC 4.0, у вас нетчтобы сделать что-то еще, кроме получения соединения через DriverManager
.
Если это не драйвер JDBC 4.0, вам придется создать экземпляр драйвера с помощью
Class.forName("org.apache.derby.jdbc.EmbeddedDriver").newInstance();
Очевидно, вам понадобится эта частькода выше.
Теперь просто возьмите объект Connection
.
DriverManager.getConnection("jdbc:derby:dbName;create=true");
С этого момента вы можете создавать Statement
(s), как вам нравится.Это означает, что вы можете создавать таблицы, вставлять строки, обновлять строки, удалять строки и т. Д.
Чтобы корректно завершить работу встроенной базы данных Derby, вам необходимо использовать
DriverManager.getConnection("jdbc:derby:dbName;shutdown=true"); // see the same database name "dbName"
перед выходом из основногоприложение.Это не обязательно, но рекомендуется.
Вы можете создать служебный класс для хранения EmbeddedDataSource
( docs ), который будет обеспечивать соединения вокруг вашего приложения.
public final class EmbeddedDerby {
private static final DataSource DATA_SOURCE;
static {
// Initialize DATA_SOURCE with EmbeddedDataSource
}
...
public static Connection getConnection() {
return DATA_SOURCE.getConnection();
}
}