【问题标题】:Java web framework frontend for stored procedure backend用于存储过程后端的 Java Web 框架前端
【发布时间】:2016-08-05 07:33:04
【问题描述】:

我需要将遗留的内部 Java EE 应用程序(JSP、EJB/存储过程、Weblogic)移植到更新的 Java Web 框架并大幅改进功能/UI。我受到了一些限制,因为后端将保留 Oracle 存储过程(没有直接 SQL),因此排除了许多 ORM/JPA 技术。

在这一点上,我倾向于使用 Spring JDBC 来包装存储过程访问以及 Spring MVC、REST 和 Twitter Bootstrap 的组合作为前端。总的来说,我希望能够更好地支持迭代/敏捷功能开发等。

还有其他值得研究的 (Java) Web 技术吗?

【问题讨论】:

    标签: java spring twitter-bootstrap spring-mvc


    【解决方案1】:

    这只是我的拙见,我建议您研究 Grails。尽管听起来您将无法利用 GORM,但 Grails 仍然提供了出色的 MVC 框架方法,并且约定优于配置意味着您不需要处理 XML 配置文件和/或您所做的注释与许多其他框架。

    这是关于 Grails without Gorm 的另一篇 * 帖子:https://*.com/a/4600991/463196

    在 Grails 中,对 Taglib 的支持非常好(编写自定义 Taglib 从未如此简单),并且插件生态系统令人难以置信。

    此外,Groovy 意味着不必编写大量样板的 getter/setter,旧的重载构造函数。最容易支持的代码行是从未编写过的代码行。

    【讨论】:

    • 对此+1。在过去的 2 年中,我不得不为现有系统编写 2 个新的前端(后端 - 通过 Web 服务进行通信),我在 Spring MVC 中编写了一个,另一个使用 Grails(没有 GORM)。如果再做一次,肯定会选择 Grails。
    • Grails 看起来确实很有趣,但是我们已经有很多需要重用的域/dao/实用程序 Java 类,我看不出它们如何轻松适应 Grails...跨度>
    • 这是对将现有 Java 代码与 Grails 集成的一个很好的回应。 *.com/a/896288/463196。我自己没有这样做,但如果您选择走 Grails 路线,这是一个值得研究的深思熟虑的答案。
    【解决方案2】:

    我知道这不是您问题的真正答案,因为您已经给出了答案。但是根据类似设置(Java EE/Oracle 存储过程/函数)的个人经验,我不能推荐足够多的组合,您建议使用 Spring Core/MVC 和SimpleJdbcCall 链接到您现有的 Oracle 存储过程。我特别喜欢这种设置,因为它可以很好地扩展,您可以开始以非侵入方式逐位重构。

    【讨论】:

    • 模板技术怎么样...我过去使用过 Freemarker...有没有更好的选择?
    • 我过去使用过 Freemarker 和 Velocity,但我更喜欢 Velocity,因为它的语法简单,而且通过 VelocityTools 提供了插件
    最近更新 更多