2

我正在使用 Spring Roo,我需要在 Roo_Entity.aj 文件中覆盖 Roo 的 Remove() 方法。当我尝试删除我的实体时,我遇到了很多外键约束错误,尽管我认为我的 JPA 注释是正确的。

我要做的是覆盖 Roo_Entity.aj 文件中的 Remove() 方法,以在我的事务提交之前手动检查外键并删除有问题的记录。

我在 .java 文件中创建了自己的 Remove() 方法,但是 Roo 不会自动更新 Roo_Entity.aj 文件,我不得不手动删除和编辑 .aj 文件。Roo 是否应该认识到我已经在我的 .java 文件中手动创建了一个 Remove() 方法并相应地管理 Roo_entity.aj 文件?

提前致谢!

4

1 回答 1

2

是的,Roo Shell 应该看到您已经在实体类中实现了 remove() 并自动将其从 Roo_Entity.aj 中删除。检查它是否不适合您的一些事情:

  • Roo Shell 正在运行吗?它必须为您管理各个方面。
  • 它是 remove(),而不是 Remove(),对吧?
  • 签名是否相同?公共无效删除()?
  • 您是否已将更改保存到磁盘?Shell 监视文件系统,因此除非您保存它,否则无法看到您的更改。
  • 如果您使用的是 SpringSource Tool Suite:您是否尝试过 IDE 中的“AspectJ Refactoring”->“Push In...”重构?

通常,您永远不必手动编辑 Roo_*.aj 文件。

于 2010-09-06T10:50:15.187 回答