我(一段时间没有接触 JPA)开始了一个使用 Hibernate 4.1、JPA2 和 Spring 的项目。这是一个具有共同生命周期的 Maven 项目。
运行 mvn test 后,我得到了未找到所需数据库对象的预期结果(连接按预期成功)。然而,我所有的研究和实验都证明不足以做出似乎很普遍的事情。
我希望能够在执行单元测试时让 Maven 删除/创建本地开发数据库的模式;我想 hibernate3-maven-plugin (理想情况下是 3.0 版)应该处理这个问题,但我没有设法让它工作。我不希望自动插入任何数据(为此我可以使用 DBUnit,甚至更好地让每个测试生成自己的测试数据,但这在这里不起作用)但我确实希望在测试数据库上刷新模式,反映了我带注释的模型类的当前状态。我想这将绑定到 process-test-resources 阶段。
我希望使用(当前)模式定义生成一个(或一组)sql文件,但我得到的最佳结果反映了这里描述的问题:Maven + Spring + Hibernate:hibernate3-maven-plugin hbm2ddl failed for reason "Caused by :java.lang.NullPointerException”(目前没有解决方案)。
我是否错过了一些愚蠢的事情,或者此时真的不可能?如果有人可以为我提供任何
关于如何实现这一点的适当文件
使用休眠 4 的工作示例
通过其他策略实现我的目标的任何实用方法指南。
如果它有任何相关性,数据库是 Postgres 9.1。
提前致谢。