我想通过以下方式开发一个“基于数据库的”java桌面应用程序:
- 使用 JPA (Netbeans 7.4 生成的 POJO )开发数据访问层 ( DAL )
- 开发业务层(BL)(我自己的类、控制器等)
- 开发表示层 ( PL ):图形用户界面(面板、框架、对话框)
- 使(PL)与(BL)通信
我在单个 Netbeans 项目 (ProjectDBL.jar) 中开发了 (DAL + BL)。
我在一个单独的 Netbeans 项目 (ProjectGUI) 中开发了 PL
我将 ProjectDBL.jar 作为编译库导入 ProjectGUI。
我没有将 EclipseLink 库添加到 ProjectGUI,因为它们已添加到 ProjectDBL.jar 中。
出于同样的原因,我没有将数据库驱动程序库添加到 ProjectGUI。
我想将我的 DAL+BL 和我的 PL 完全分开。进一步的数据库修改(例如 MySQL->SQLServer)不应该影响 PL 中所做的所有事情。
当我想调用 ProjectDBL.jar 中的任何方法时,我面临的问题是一种异常引发:
Exception in thread "main" java.lang.NoClassDefFoundError: javax/persistence/EntityNotFoundException
似乎持久性单元不能由外部 jar 实例化......