Java 为GWT/Spring/Hibernate/PostgreSQL生成服务/dao层

Java 为GWT/Spring/Hibernate/PostgreSQL生成服务/dao层,java,hibernate,spring,code-generation,Java,Hibernate,Spring,Code Generation,我们正在开发一个webapp,使用GWT2.0来避免出现Engine、Spring和Hibernate,并尝试通过自动生成尽可能多的代码来快速启动 我已经看过了。我试过appfuse,但那对我不起作用;此外,GWT的roo还没有完全实现,因为它是一个里程碑式的发布 如果有一个工具可以为我生成服务层和DAO层,我应该能够完成实际的业务逻辑和UI连接——尽管看起来如果我愿意再等6个月,目前的1.1M1版本的Roo可以让我实现这一点,但我需要马上做些事情 有什么建议吗 非常感谢我自己没有使用过它,但看

我们正在开发一个webapp,使用GWT2.0来避免出现Engine、Spring和Hibernate,并尝试通过自动生成尽可能多的代码来快速启动

我已经看过了。我试过appfuse,但那对我不起作用;此外,GWT的roo还没有完全实现,因为它是一个里程碑式的发布

如果有一个工具可以为我生成服务层和DAO层,我应该能够完成实际的业务逻辑和UI连接——尽管看起来如果我愿意再等6个月,目前的1.1M1版本的Roo可以让我实现这一点,但我需要马上做些事情

有什么建议吗


非常感谢

我自己没有使用过它,但看起来很有希望……

AppFuse和Spring roo在其当前版本中应该提供足够的功能来生成所需的代码

由于您想要生成服务层和Dao层,这里没有GWT相关内容


因此,请再试一次AppFuse,或者问一个关于AppFuse的具体问题。

那又如何呢?

根据我对服务层的理解,我不知道您将如何生成它;如果编写得当,它应该非常基于您的业务模型,并且根本不应该遵循您的数据库模式。与DAO不同的是,实际上我也不总是拥有DAO的一对一实体,您不应该为每个实体都提供服务,相反,您的服务应该使用实体作为其API的一部分来执行工作单元,或者提供作为控制逻辑和数据访问之间的抽象层的业务对象。它也可以是两者的混合体。这取决于应用程序有多复杂,以及DAO/实体与数据库的关系有多密切

编辑:根据你的评论,我会使用其他帖子中提到的工具来生成DAO层,这将给你一个很好的开始。然后我将创建一个包含所有DAO的服务对象。从那里,您将有权在服务对象的可测试容器中执行所有业务逻辑。这将阻止您将其放在控制器中,并提供一个单一的位置,让人们可以看到所有业务逻辑方法。随着它的增长,您将看到冗余和逻辑单元,这些逻辑单元稍后可以拆分为不同的服务对象

希望您有时间这样做,但是当我非常忙时,我希望我的所有业务复杂性都在一个服务对象中,而不是在多个控制器中。您稍后进行的重构将更加容易。您仍然可以轻松地测试方法,我建议您不要着急,相信我,在服务方法上编写测试要比通过部署和检查来测试更快。

签出。真是太棒了。它接受您的DAO,您可以使用myEclipse自动生成DAO,并将其插入到快速代码生成漂亮的服务层接口中。它使用Spring作为一个选项来完成这一切。
很酷的一点是,当数据库随着DAO的更新而变化时,您可以一次又一次地对服务层进行重新评估。看看这个,谢谢!那没用。我曾建议使用Rails,但认为它还不够流行。Grails可能有更好的机会,但社区不如Rails或普通Java。因此,我可能无法推荐Grails和GWT组合。无论如何谢谢你@安杰布:我能理解。谢谢你的反馈,祝你好运!非常感谢。我正在寻找由该工具生成的域b DAO c服务层。Firestorm只能做DAO。想想看,我过去也用Oracle专有的ADF框架做过这件事。我不建议使用ADF,但它非常能够基于hibernate/toplink的现有数据库生成DOA和服务层。对于生成部分,您需要使用JDeveloper。可能值得调查…我们正急着部署一些东西。总的来说,你说的大部分都是有道理的。考虑到工作的紧迫性,我希望在没有太多调试的情况下启动并运行一些东西。这些缺陷可以稍后修复。借款我真正想要的是在完成DB表/视图的情况下生成DAO、域对象和configannotation。希望这能说明问题?