DBUnit问题?hibernate-tools hbm2ddl问题?

DBUnit问题

在父子关系的表(表中一个字段外键关联到本身)中,使用DBUnit清除其中数据时出错。如menu表中有一个parent_id外键关联到 menu的主键,这时我们通过sql "delete from menu"也是会出错的(如果表中存在相互关联的数据),使用DBUnit来清除数据也会出错。

DBUnit应该有这个问题的解决方案。待解决。

hibernate-tools hbm2ddl问题

同时发现,使用hibernate-tools提供的hbm2ddl生成的数据库表中,没有外键关联!(生成的ddl文件中有外键相关信息,但由这 个命令来创建的数据库表与通过这个ddl文件生成的数据库表不一致,表现在通过命令生成的数据库表没有外键!)这将导致我们的单元测试可能存在bug。 如,删除一个角色时应先断开该角色与用户的关联,然后再删除;如果库表中没有外键限制,就可以直接删除角色;这样我们的RoleManager里的 remove方法直接删除角色,就可以通过单元测试,而事实上这个逻辑是错误的,我们实际部署时自己创建数据库表(有外键),这个方法就会抛异常。

先记录这个问题,以后跟进。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值