【问题标题】:App with derby database - client access needs changing to embedded?带有 derby 数据库的应用程序 - 客户端访问需要更改为嵌入式?
【发布时间】:2016-12-06 22:22:17
【问题描述】:

我对 java 还是很陌生,我想我已经开始了一个有问题的项目。

我为一个朋友创建了一个工作,其中有员工、轮班、站点,并且这些都需要在开始时加载。

我去寻找解决方案并决定使用 Derby 数据库。我现在已经对应用程序进行了编程,它与数据库一起工作得很好。它加载所有参数并创建用于处理的对象,

现在我需要将我的项目部署到我朋友的计算机上,以便他可以使用它,我认为我的数据库设置错误。我想我需要嵌入它?所以它与应用程序一起使用。

所以我的问题是我的选择,

我读到我可以通过将数据库设为类来将数据库更改为“嵌入式”数据库?我不知道该怎么做,也许是因为我是 Java 新手,我发现所有关于这个主题的文章都很难理解。

另外,我想也许我可以单独安装 Derby 并连接到它?

或者也许我可以放弃 Derby 的想法并完全切换到另一个数据库,

我对这里的选择有点困惑,基本上我已经围绕安装 Derby DB 构建了一个应用程序,使用这条线连接到它。 jdbc:derby://localhost:1527/SG_database

如果有人可以在这里给我一些“简单的英语”选项,我将非常感激。

【问题讨论】:

标签: java derby


【解决方案1】:

要重新配置您的应用程序以将 Derby 用作嵌入式数据库,您只需将 JDBC 连接 URL 更改为 jdbc:derby:SG_database,并更改您的 CLASSPATH,以便您的程序引用 derby.jar 而不是 derbyclient.jar .您可能应该将;create=true 添加到该 URL 的末尾,以便您的朋友第一次运行您的应用程序时,在他们的计算机上创建数据库。

但是,是的,您还有其他选择,而且在不了解您的应用程序的情况下,很难为您提供非常详细的指导。

当您的朋友使用该应用程序时,您是否希望您和您的朋友共享同一组数据?或者您的应用程序是否设计为使您的数据和您朋友的数据没有任何共同点?

如果您想共享数据,那么拥有一个数据库实例很重要,并且你们两个都必须共享它,在这种情况下,客户端-服务器配置可以很好地工作。

如果您想成为两个完全独立的应用程序,不共享任何内容,并且每个人都有自己的数据副本,那么嵌入式配置可以很好地工作。

也许您可以简单地尝试嵌入式配置,看看它在您的应用程序中的表现,然后如果您有更具体的问题要问,请返回这里?

【讨论】:

  • 是的,它是完全独立的。该应用程序只需要在不运行时将信息存储在数据库中。所以嵌入是要走的路线,......我知道这将是一个我会回顾并畏缩的问题,但是......我在哪里找到 CLASSPATH ?
  • 您使用-cp 标志将CLASSPATH 设置为java,或使用CLASSPATH 环境变量。见docs.oracle.com/javase/tutorial/essential/environment/…docs.oracle.com/javase/8/docs/technotes/tools/windows/…
  • 我仍然在这里苦苦挣扎,我找不到任何一个 derby 驱动程序的环境变量 - 我对此真的很陌生,我当前的 CLASSPATH 变量如下:-
  • C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\iis express\PHP\v5.3;C:\Windows\system32;C:\Windows;C :\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Microsoft SQL Server\80\Tools\Binn\;。 . . . . . . . . . . . . .C:\Program Files (x86)\Microsoft SQL Server\120\Tools\Binn\;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;C:\Program Files\Microsoft SQL Server\120\ DTS\Binn\;C:\Program Files (x86)\Universal Extractor;C:\Program Files (x86)\Universal Extractor\bin;C:\Program Files (x86)\QuickTime\QTSystem\
  • 基本上我需要把它移到另一台电脑上,我一无所知,我以为这很容易?
猜你喜欢
  • 1970-01-01
  • 2023-03-08
  • 1970-01-01
  • 2018-01-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-26
相关资源
最近更新 更多