前言
OS:Win10
IDE:IDEA 2019.3
Derby 簡介
Derby數據庫是一個純用Java實現的內存數據庫,屬於Apache的一個開源項目。由於是用Java實現的,所以可以在任何平臺上運行;另外一個特點是體積小,免安裝,只需要幾個小jar包就可以運行了。
Derby 兩種使用模式
- 內嵌模式。Derby數據庫與應用程序共享同一個JVM,通常由應用程序負責啓動和停止,對除啓動它的應用程序外的其它應用程序不可見,即其它應用程序不可訪問它;
- 網絡模式。Derby數據庫獨佔一個JVM,做爲服務器上的一個獨立進程運行。在這種模式下,允許有多個應用程序來訪問同一個Derby數據庫。
嵌入式模式
-
Step1
: 導入 Derby 內嵌式的 Maven 座標依賴<dependency> <groupId>org.apache.derby</groupId> <artifactId>derby</artifactId> <version>10.11.1.1</version> <!-- <scope>test</scope> --> </dependency>
-
Step2
:使用 Java 連接 Derby 數據庫public class DerbyUtils { private static final String driver = "org.apache.derby.jdbc.EmbeddedDriver"; private static final String url = "jdbc:derby:firstdb;create=true"; static { Connection conn; try { Class.forName(driver); }catch(Exception e) { // }finally { // DriverManager.getConnection("jdbc:derby:;shutdown=true"); } } public static Connection getConnection(){ Connection conn = null; try { conn = DriverManager.getConnection(url); } catch (SQLException e) { e.printStackTrace(); } return conn; } /** * 測試, Derby 內嵌數據庫的連接 * @param args */ public static void main(String[] args) { Connection conn = DerbyUtils.getConnection(); System.out.println(conn); } }
-
Step3
: 由 DerbyUtil 獲取 Connection 對象進行 SQL 語句執行操作了。
網絡模式
之前使用 Derby 網絡模式之前,首先要啓動 Derby 服務端,這裏我們需要在 %JAVA_HOME%\db 目錄下,新建兩個文件 - server_start.bat 和 server_stop.bat
-
server_start.bat
java -jar lib/derbyrun.jar server start echo & pause
-
server_stop.bat
java -jar lib/derbyrun.jar server shutdown echo & pause
下面正式進入 Derby 網絡模式的使用步驟:
-
Step1
: 使用腳本 server_start.bat ,啓動 Derby 啓動端 -
Step2
: 添加 ij.properties 配置文件
在%JAVA_HOME%\db
下新建 ij.properties 文件ij.driver=org.apache.derby.jdbc.ClientDriver ij.protocol=jdbc:derby://localhost:1527/ #當COREJAVA數據庫不存在,創建一個 ij.database=COREJAVA;create=true
-
Step3
: 在%JAVA_HOME%\db
下打開 cmd 界面,執行java -jar lib/derbyrun.jar ij -p ij.properties
命令。執行該命令是爲了創建數據庫,便於後面 Java 連接 Derby 數據庫使用 -
Step4
: 導入 Derby 客戶端的 Maven 依賴
當然若不是 Maven 工程,也可以將%JAVA_HOME%\db\lib\derbyclient.jar
拷貝到當前 Java 項目下的 lib 目錄下,也是沒有問題的。<dependency> <groupId>org.apache.derby</groupId> <artifactId>derbyclient</artifactId> <version>10.11.1.1</version> </dependency>
-
Step5
: 使用 Java 連接 Derby 數據庫public class DerbyUtil { private static String driver = "org.apache.derby.jdbc.ClientDriver"; private static String DERBY_DB = "jdbc:derby:COREJAVA;create=true"; private static String url = "jdbc:derby://localhost:1527/COREJAVA"; public static Connection getConnection() throws SQLException { try{ Class.forName(driver); }catch(Exception ex){ ex.printStackTrace(); } return DriverManager.getConnection(url); } public static void main(String[] args) throws SQLException { Connection con = DerbyUtil.getConnection(); System.out.println(con); } }
Derby 的命令行操作工具 ij
ij 工具環境變量配置
%JAVA_HOME%\db\bin
小編這裏配置是 D:\Java\jdk1.8.0_101\db\bin
特別注意:配置環境變量之前,不要先打開 cmd 命令界面,若配置完成環境變量後,重新打開 cmd 命令行界面,否則配置的環境變量不生效
ij 工具的使用
打開 cmd 命令行輸入 ij ,即可進入 ij 命令行操作界面