我应该在何时/何时创建一个表格,这是我的程序的基础?

时间:2014-02-28 08:01:51

标签: java swing sqlite deployment

我正在开发一个桌面java程序,它利用SQLite数据库来恢复一些数据。我现在如何创建数据库并创建我的表:

Class.forName("org.sqlite.JDBC");
c = DriverManager.getConnection("jdbc:sqlite:mokvoc.db");
stmt = c.createStatement();
String sql = "CREATE TABLE COMPANY " + ...

问题

问题是我想在程序的整个生命周期内一次执行此声明,特别是第一次程序运行 安装步骤期间 。请告诉我如何执行此操作并且是否需要添加新的JFrame,或者我现在不是这样的?

3 个答案:

答案 0 :(得分:3)

对于部署Java桌面应用程序,最好的选择通常是安装应用程序。使用Java Web Start。 JWS适用于Windows,OS X& * nix中。

  

JWS提供了许多吸引人的功能,包括但不限于启动屏幕,桌面集成,文件关联,自动更新(包括延迟下载和程序控制更新),本地分区和&按平台,体系结构或语言环境下载的其他资源,运行时环境的配置(最低J2SE版本,运行时选项,RAM等),使用扩展轻松管理公共资源..

最后一个适用于部署DB API本身。它可能会在许多不同的应用程序中使用。

填充数据库最好在上面的..中完成,如扩展安装程序服务中所示。这在安装时运行一次,在卸载时再运行一次。

  

扩展程序安装程序使用ExtensionInstallerService与JNLP客户端进行通信。它提供以下类型的功能:

     
      
  • 访问首选安装位置以及有关JNLP客户端的其他信息
  •   
  • 操作JNLP客户端的下载屏幕
  •   
  • 使用已安装的代码更新JNLP客户端的方法
  •   

答案 1 :(得分:2)

很大程度上取决于您的流程......例如,依赖您的安装过程,您可以执行特定的代码片段,在安装应用程序时构建数据库和表。许多安装程序确实提供了执行此操作的方法,但通常专注于它们所针对的平台(例如在Windows上执行.exe)

OR

启动应用程序时,您可以检查数据库/表的存在并执行“第一次”运行设置过程

OR

您可以预先创建数据库和表,并将其打包为安装程序的一部分......

答案 2 :(得分:0)

  1. 连接数据库。
  2. 从连接中获取数据库元数据。
  3. 您可以从数据库元数据中查询可用表。如果您没有找到您的表,您的应用程序将首次运行。初始化数据库 - 创建表,插入种子数据等。