2010-08-10 82 views
2

我有一个具有嵌入式Derby数据库的Java应用程序(尽管没有休眠)。该应用程序正在使用以下属性:Apache Derby嵌入式模式部署

datasource.driverClassName = org.apache.derby.jdbc.EmbeddedDriver 
datasource.url = jdbc:derby:C:/derby/mydb; 
datasource.username = 1234 
datasource.password = 1234 

一切工作正常和伟大。现在我需要打包所有内容并将其提供给客户端以安装到他们的GlassFish服务器上,现在我不希望客户端安装Derby,也不希望他们知道应用程序正在使用数据库。

问题是:德比应该在JAR中? “datasource.url”应该是什么?

在此先感谢。

回答

4

您可以在您的网络应用程序中找到数据库数据文件。例如在“WEB-INF/data /”(当然是“WEB-INF/lib /”中的Derby驱动程序文件)。

因此,您可以在您提供给客户端的WAR文件中预嵌入数据库(使用“相对路径”JDBC URL)。他不必手动安装Derby DB。

注意:当您提供应用程序更新(以不擦除数据库)时,您必须小心。

+0

任何有关“datasource.url”在这种情况下看起来像什么的线索?它不能是“jdbc:derby:C:\ program files/GlassFish/domains/domain1/myapp \ data /” 谢谢 – 2010-08-10 14:22:44

+0

我建议你在URL中的RELATIVE路径。所以,你不依赖于Glassfish安装目录。例如“jdbc:derby:WEB-INF/data /” – 2010-08-10 14:52:25

0

债务数据库将在记录netbeans你没有改变它使它的工作只需要德比数据库文件并将其粘贴到dist文件现在将dist文件移动到一个新的位置,如您的桌面为例如希望这有助于。