2

我正在用 Java 创建一个程序,其中我必须使用很多表。我决定在 JavaDB 文件中创建所有这些表。

但是,现在我想将这个填充的 JavaDB 文件与我的 JAR 文件一起分发,因为连接到服务器不是一种选择。

过去,我只能通过使用那个 Derby 包来分发一个带有 JAR 的空数据库。

有任何想法吗?

太感谢了!

4

1 回答 1

1

我不确定我是否理解这个问题,但可以在 JAR 中打包一个只读数据库。从德比文档中:

在类路径中访问 Databases-in-a-Jar

一旦创建了包含一个或多个 Derby 数据库的存档,就可以将其放置在类路径中。这允许在应用程序不知道存档路径的情况下从应用程序内部访问数据库。当 jar 或 zip 文件是类路径的一部分时,您不必指定 jar 子协议来连接它们。

要访问类路径中 zip 或 jar 文件中的数据库:

  1. 在启动 Derby 之前设置类路径以包含 jar 或 zip 文件:

    CLASSPATH="C:\dbs.jar;%CLASSPATH%"
    
  2. 使用以下连接 URL 之一连接到 jar 或 zip 文件中的数据库:

    jdbc:derby:/databasePathWithinArchive
    
    (standard syntax)
    
    jdbc:derby:classpath:/databasePathWithinArchive
    
    (syntax with subsubprotocol)
    

例如:

jdbc:derby:/products/boiledfood
jdbc:derby:classpath:/products/boiledfood

如果这不能回答问题,请澄清。

于 2010-07-23T08:21:16.540 回答