我正在开发一个Java项目,我的任务是编写一些针对旧数据库的数据库映射。
在这样做时,我开始质疑我应该如何测试我的映射是否有效。我很可能在我的映射中犯了几个错误,因为我不是经验丰富的JPA注释用户。
那么关于通过注释测试手动编写的JPA映射的一般意见/最佳实践是什么?
答案 0 :(得分:5)
如果您正在使用Hibernate,可以在persistence.xml
文件中设置以下内容:
<property name="hibernate.hbm2ddl.auto" value="validate" />
让Hibernate验证现有架构,但 NOT 对架构进行任何更改。这是一种快速查看映射是否对您的数据库有效的方法。
答案 1 :(得分:4)
我一直在使用OpenEJB在基于EJB的应用程序中非常成功地测试实体映射。它具有良好的事务回滚功能,因此,每个单元测试都是独立的(请参阅OpenEJB示例中的“事务回滚”)。
通常,我认为最佳做法是在内存数据库(例如hsql)上测试db映射,并在每个测试用例结束时回滚更改。您还可以查看DBUnit project。