如何在Netbeans IDE之外运行数据库程序?

时间:2012-04-10 08:58:29

标签: java jar netbeans-7

我是数据库的新手,这是我使用java Netbeans 7.1在数据库中的第一个程序---现在我们国家已经是夏天,而且我是一名学生。我们关于编程的下一个主题是关于数据库,因为没有课我花时间学习数据库为下一个学期准备,我将这个网站称为我现在制作的第一个数据库程序的指南。

http://www.homeandlearn.co.uk/java/databases_and_java_forms.html

我在教程中做了所有事情,实际上我已经完成了该程序。

我做的最后一件事是我清理并构建程序,因为我希望程序运行而不再打开netbeans我下载了JRE并将我的database_form.jar作为jar可执行文件。 " database_form"我的Netbeans项目的名称。我这样做是通过在打开任何jar文件时将JRE.7中的javaw作为我的dafault来实现的。

无论如何,这就是我运行程序的方式。

  1. 在Netbeans IDE中运行程序
  2. 使用Netbeans,在我的程序工作之前,我首先需要"启动服务器"在JavaDB上。因为如果我没有这样做,就会发生异常" Err。连接到服务器localhost 1527等等#34;

    1. 仅使用jar可执行文件运行程序。
    2. 问题是否存在异常,并且连接中的错误仍然发生。

      我想要实现的目标?

      我希望程序在不打开Netbeans IDE的情况下运行,然后转到Java DB来单击" Start Server",我不想再那样做了。或者我的第二个选择是使用命令提示符启动服务器,这样我只需要创建一个bat文件,这样每当我打开我的程序database_form.jar时,我只需将bat文件放在桌面上并运行它。

      第二个问题! 实际上,我已经通过使用命令提示符启动服务器来尝试我的第二个选项,但我忘记了我是如何做到的,我只是在某个网站上发现了我记得的唯一事情就是Exception说"因为服务器午餐失败了数据库员工缺失。 Employees是我创建的数据库的名称。

      O.S.我使用的是Windows 7。

      感谢您的回复,对不起我想要具体的长篇文章,抱歉:D

3 个答案:

答案 0 :(得分:2)

是的,从你的描述来看,似乎有一些令你困惑的事情。

首先,数据库通常作为服务器运行,多个客户端连接到它们,从而允许共享它们。启动Java DB时,您将启动Java DB数据库服务器。

也就是说,轻量级数据库(如Java DB)可以在嵌入式模式下运行,如here所述。请记住,您使用derby.system.home属性指向的目录将需要包含数据库文件,否则您还需要以编程方式创建。

其次,有各种方法可以在IDE之外运行Java应用程序,但jars本身不能像exe文件在Windows中那样执行。

最简单的方法是调用java可执行文件,传递必要的类路径和包含main方法的类的名称。例如,如果我有一个名为com.example.Application的类已编译到目录C:\dev\example\classes,则以下命令行将运行该应用程序:

java -cp C:\dev\example\classes com.example.Application

如果存在外部库的依赖关系,就像你在Derby JDBC驱动程序中的情况一样,那么那些也需要包含在类路径中,结果如下:

java -cp C:\dev\example\classes;C:\dev\lib\derby.jar com.example.Application

Java启动程序here上有一整套文档。

现在,回到罐子里。就像我说的,罐子不是可执行的,但有一些东西被称为“可执行罐子”。这与任何jar都是一样的,除了清单有一些特殊的附加内容,用于指定应用程序入口点或主类以及类here所述的类路径。

在jar的清单中指定了main-class和class-path后,以下命令行将运行该应用程序:

java -jar C:\dev\example.jar

你甚至可以将jar扩展与java exe相关联,双击jar会导致应用程序启动(虽然在dev机器上,jar扩展与WinZip或simlar相关联以打开它可能更有用)罩)。

答案 1 :(得分:0)

Netbeans中的默认数据库是Derby / JavaDB。所以你需要:

  • 在我们的类路径中添加javadb / derby的jar(它可能已经存在,因为它在Ubuntu中安装时与java捆绑在一起)
  • 使用jdbc URI设置路径以保存数据库数据

我个人建议使用hsqldbH2:它们支持内存数据库,对于没有持久性数据或测试的独立项目非常有用。

答案 2 :(得分:0)

如果使用窗口,请将管理工具中的ODBC数据源添加到Java Derby驱动程序并运行jar。