从Netbeans连接到H2

时间:2015-12-02 04:20:09

标签: netbeans h2 connect

我试图在Java(Netbeans)中创建一个小型桌面应用程序,该应用程序使用附加到其上的数据库进行分发(类似于旧的VB6应用程序,其中包含用于存储数据的mdb文件)。

我已创建项目并将H2-1.4.190.jar放入我的项目文件中。我可以在我的主要课程下看到Netbeans的H2 * .jar文件。

我下载了SQL Workbench,创建了一个表(名为' Company')并放入一行数据。

现在我需要(以某种方式)连接到数据库并从Netbeans中提取数据。谷歌对此并不是很有帮助。我该如何连接?如何检索(或插入/编辑)数据?任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:3)

在netbeans项目中连接到H2数据库与使用JDBC驱动程序和任何其他IDE连接到任何其他数据库基本相同。您将带有驱动程序的jar文件放在项目中,然后使用jdbc函数访问数据库或使用更高级别的API来间接调用jdbc函数。 Netbeans还可以自己连接到数据库,允许您使用netbeans作为SQL Workbench的替代方法来创建/查看/编辑表。

要在项目中使用:

  1. 下载jar文件:http://repo2.maven.org/maven2/com/h2database/h2/1.4.190/h2-1.4.190.jar
  2. 在“项目”窗口中选择项目下的libraries文件夹。
  3. 右键单击弹出菜单。
  4. 选择Add Jar/Folder ...
  5. 选择您下载的jar。
  6. 编写代码以访问数据库。
  7. 以下示例从/home/username/h2test.db中的数据库文件中读取名为UNTITLED的表,其中包含两列timedescription

    Class.forName("org.h2.Driver");
    try (Connection con = DriverManager.getConnection("jdbc:h2:/home/username/h2test")) {
        PreparedStatement stmt = con.prepareStatement("select * from UNTITLED");
        try(ResultSet rs = stmt.executeQuery()) {
            while(rs.next()) {
                Date d = rs.getDate("time");
                String description = rs.getString("description");
                System.out.println(d+", " + description);
            }
        }
    }
    

    只有Class.forName("org.h2.Driver")和网址jdbc:h2:/home/username/h2test的确切形式才特定于H2。其余的工作与MySQL,SQLLITE,PostgreSQL,Derby等相同。

    有一个关于JDBC的教程:
    https://docs.oracle.com/javase/tutorial/jdbc/

    如果您想直接使用Netbeans编辑/查看表而无需编写程序。

    1. 使用Window打开“服务”窗口 - >服务。
    2. 右键单击“数据库”以从弹出菜单中选择New Connection ...
    3. 在驱动程序的第一个对话框的下拉列表中选择New Driver
    4. 将h2-1.4.190.jar文件添加到驱动程序文件,然后单击“下一步”。
    5. 在下一个对话框中修改网址,将<FILE>替换为您的文件。
    6. 单击“完成”。
    7. 服务窗口中的新连接节点应该可用。右键单击它并选择“连接”。
    8. 展开节点以转到Tables文件夹。使用“创建表”创建新表或选择现有表,然后选择“查看数据”。