fab*_*474 17 versioning grails hibernate auditing hibernate-envers
我需要在我的grails web app中为文章实现修订系统.在搜索grails论坛,stackoverflow,grails插件和谷歌搜索互联网后,我最终得到了3个选项:
选项1 - 使用grails Envers插件(请参阅http://code.google.com/p/grails-envers-plugin/).有没有人成功使用它?或者在没有插件的情况下使用Envers(请参阅此处),但如何使其与GORM一起使用?
选项2 - 使用Gvers插件我在这里找到:https://github.com/ziftytodd/gvers.我从来没有听过有人使用它,所以有没有人曾经成功使用它?
选项3 - 内置机制.Weceem为Weceem CMS的任何内容创建了版本控制系统.我可以从代码的逻辑和这个伟大的应用程序的设计中汲取灵感,但它似乎有点矫枉过正,我不喜欢使用非标准的解决方案.
所以我的问题是,你建议我做什么?你有没有使用过这些选项?
非常感谢您的见解.
由于我在问题发生后的几天内没有得到任何答案,我们已开始调查所有选项并得出以下结果/结论:
Envers插件:虽然Envers是使用Hibernate处理对象修订和审计的成熟方法(正如Vadeg所指出的),但没有这种现成的grails解决方案.Envers插件非常无用,是一个永生不死的项目.因此,使用带有GORM的Envers仍然不可能直接使用但是我认为有一个Envers插件的空间(可能是grail 2.0的一部分?),因为Envers现在是Hibernate核心模块不可或缺的一部分.但是,我们没有时间实施这样的解决方案(当你有足够的时间和资源时,这是迄今为止最好的解决方案)......所以我们放弃了它.
Gvers插件:令人惊讶的是,即使看起来没有人在GRAILS世界中使用它(即使插件创建者的电子邮件无效!),这个插件也像魅力一样工作.看起来有风险,但如果你的要求很低(比如基本的版本控制系统),你应该选择它.
内置系统:除非您正在构建具有特定需求的CMS系统,或者相反,非常简单,我不会在任何其他情况下使用它.Weceem已经很好地实现了CMS内容修订的大量示例,但即便如此,很遗憾他们不使用Envers.没有必要重新发明轮子...更好地改进现有的法拉利,不是吗?
VCS系统:一位朋友建议我使用专为此类任务而构建的现有解决方案:版本控制系统当然!! 实际上GIT似乎是完美的候选者:快速,可靠,无需任何处理的库存.实际上这是完美的解决方案.我唯一的问题是:好吧,我不知道如何使用Git(甚至更少的API),而且我没有时间.
我肯定会使用Gvers但是如果你熟悉Git或者你对GORM和 Hibernate感到满意,那就去构建一个grail插件(基于Git或Envers)
| 归档时间: |
|
| 查看次数: |
2207 次 |
| 最近记录: |