也如here所述,我试图确定初始化和更新我的应用程序数据库的最佳方法。我使用EclipseLink-JPA2。我分发了一个NetBeans平台应用程序。如何处理数据库初始化?
考虑的方案:
使用创建桌DDL代: 这样做的问题是,每次应用程序运行时会抛出异常,无法创建表。它仅在安装时才有用。这与将检查代码放入restore()方法中类似。
包含数据库与应用程序分配:ddl生成策略变得什么都不做。我仍然可以使用JPA(在开发时)生成数据库文件(嵌入式Java DB)。
最好的解决方案是安装程序/安装程序(第一次)调用初始化创建数据库的代码。这正是我在here中用JWS所做的。但是如果没有JWS,我不知道该怎么做。脚本/ jar由安装程序执行?
唯一的问题是JWS在每次更新时都运行设置代码,因此我需要实现区分首次安装和更新的逻辑。 – simpatico 2011-06-16 07:50:53
@simpatico我已经添加了一个关于模块安装程序功能的编辑,我想你在哪里也在谈论。我认为最有可能的是你控制得最好的最好方法。 – 2011-06-16 10:57:59