代码之家  ›  专栏  ›  技术社区  ›  Casey

火暴刀更换建议

  •  2
  • Casey  · 技术社区  · 16 年前

    我接管了一些使用 Firestorm DAO 来自codefurtures的代码生成器。我相信这方面的许可证很快就要到期了,我想知道是否有人可以推荐其他的选择,不管是不是开源的,这样我就可以知道有什么可以更好地做出决定。

    3 回复  |  直到 14 年前
        1
  •  0
  •   JavadocMD    16 年前

    一种选择是完全改变方向,使用像jpa这样的持久性框架。您创建Java对象模型,添加适当的注释,而JPA则为您处理没有任何杂乱生成代码的所有其他内容。

    当然,根据您的体系结构和业务情况的具体情况,这种更改可能对您不可行。但是,如果您能够管理它,JPA似乎更符合当前Java持久化的最佳实践。

    我在生产环境中使用过openjpa: http://openjpa.apache.org/

    我们考虑了toplink(oracle的实现),但遇到了一些我想不起来的问题。 http://www.oracle.com/technology/products/ias/toplink/index.html

        2
  •  2
  •   Community Mohan Dere    9 年前

    对于您4月份的具体决定来说,这可能有些晚了,但是如果您习惯于使用firestorm dao,为每个数据库实体使用生成的代码,您可能会发现很容易切换到 jOOQ . jooq完全省略了“dao层”,生成了直接表示关系模型的类。这通常被称为 Active Record pattern . 代替编写DAOs,您可以直接从Java中查询数据库。 jOOQ's built-in DSL ,类似于微软的 Linq

    我同意 JavadocMD ,JPA(或Hibernate)是目前被认为是“最佳实践”。但是,您可能不想将对象关系映射添加到应用程序中 well-known reasons

        3
  •  1
  •   Jor    15 年前

    我强烈建议 关闭Firestorm。FireStorm使得在大约90%的用例中编写DAO成为过去。对于所有其他情况,只需将firestorm生成的dao子类化,并使用继承的helper方法向其添加所需的功能。你不需要许可证,你可以使用免费的许可证。 不,我不是来自firestorm,但是firestorm帮我完成了项目,节省了大约40%的时间。一旦我进入更复杂的查询,它将开始节省我大约20%的开发时间,但嘿,它仍然比其他解决方案节省20%。此外,它还转换为原始jdbc。当出现问题时,如果您熟悉odbc/jdbc,那么调试起来就容易多了。