在独立Java应用程序中设置嵌入式Derby数据库

Cla*_*nor 24 java derby embedded-database javadb

我正在尝试为独立的Java应用程序设置嵌入式Derby数据库,但在完成各种文档之后,我似乎无法找到任何简单的解释或示例.我正在使用带有Derby插件的Eclipse,并为我的项目启用了Derby特性.

我找到了一个在独立通讯录中使用嵌入式Derby数据库的例子,以及在Eclipse中使用Derby的概述(这似乎不包括嵌入式部署),但我仍然觉得我缺少一些基本的东西.

这是我第一次尝试使用Java数据库,我有点困惑,所以这是我的基本问题:

  • Java如何与Derby数据库交互(在嵌入式部署中)的基本理念(或模型)是什么?他们的重要设计模式是否被遵循?
  • 我是否需要在类中创建某种类型的数据库构造函数(包括表结构等),或者是否所有这些都是通过其他工具完成的?
  • 一个数据库被创建并保存,我该如何"启动"它?实际数据库保存在哪里?

代码片段将非常有用!

sim*_*eer 1

如果您同意切换到 netbeans IDE,这里有两个有用的教程,我可以在 ide 中使用它们(我在安装程序方面遇到了一些小问题)。它使用 JPA,这是一种简化大量数据库交互的抽象。

https://blogs.oracle.com/geertjan/entry/embedded_database_for_netbeans_platform

http://platform.netbeans.org/tutorials/nbm-crud.html

为了解决您的一些疑问:

  1. 如果您使用 java 和关系数据库,我强烈推荐 JPA。否则,您将使用 JDBC 与数据库交互并使用 SQL。
  2. 传统上,您使用实用程序或运行脚本来创建表模式,但是由于您要嵌入,您可能有兴趣(像我一样)让数据库和模式动态地自行创建,这样您就不必运行此脚本每次安装应用程序时。这可以通过本教程介绍的 derby 嵌入式 JPA 配置来实现。
  3. 如果您正在运行嵌入式 derby 数据库,则无需启动单独的线程或套接字。您的应用程序将使用 jpa 或 derby api,它将使用文件锁定来访问 derby 文件。在我的定义中,嵌入式数据库没有单独的线程或进程侦听处理多个请求的套接字。

希望这有帮助,祝你好运!