【问题标题】:java backend and grails frontendjava后端和grails前端
【发布时间】:2012-02-21 09:11:21
【问题描述】:

我已经在 java (Maven) 中完成了一个项目的后端部分,并使用了 Restful 设计。

java/(Maven)中的结构是:

1) 域层

2) 数据层

3) webservicelayer(客户端)

前端部分将在 groovy/grails 中完成。

我在 grails 中编写的唯一部分是:控制器和视图。

结构是:

1)控制器

2) 观看次数

我的问题是我们如何将它们两个部分联系在一起。由于 Restful 部分是用 Maven 编写的,并创建了一个 war 文件。

如何让前端连接到后端?

【问题讨论】:

    标签: grails maven frontend backend


    【解决方案1】:

    grails 真正出色的功能之一是 GORM,所以我不确定您为什么要跳过这部分。通常,如果您需要从后端获取一些数据然后转发到视图,您只会使用控制器。在您的情况下,您已经编写了后端,因此您实际上可以只做调用 REST 接口的 ajax 页面,这可能就是您所需要的。如果是这种情况,您几乎不需要 grails;您只需将静态页面放在项目的 src/main/webapp 文件夹下即可。另一方面,如果你想为 GSP 页面使用 grails,你可以让控制器不做任何事情(所以它实际上只是指定路由),并且让视图成为进行 ajax 调用的 GSP 页面。如果您打算这样做,请务必查看 jquery,因为它具有非常好的 ajax 支持。

    【讨论】:

    • 我正在使用 Jax-RS 和 Jax-B,但不了解任何 Ajax 或其他前端技术。我刚刚学习了一些 grails,并在 grails 中使用了 som spring security,它很容易使用。
    • 你的意思是说我用Ajax就不需要控制器了吗?
    • 不,你没有。只需将 ajax 调用的静态页面放到您的 REST api 中即可。
    【解决方案2】:

    REST 正在使用 HTTP,因此您的 Grails 应用程序将成为它的客户端。虽然在中间使用 Grails 有点浪费,但您可以在 JS 中设计您的前端,然后在浏览器中完全绕过 Grails。

    如果你一心想走 Grails 的道路,你将需要一个 HTTP 客户端(commons HTTP 客户端是一个相当不错的客户端),然后在接收端你将能够解析响应,这就是 Grails 的实际所在有用。 grails.converters 为您提供了一个不错的方法

    JSON.parse(responseText)
    

    完全有可能有更好的方法来解析或执行客户端 HTTP。例如,grails 的功能测试插件包装了 HTTP 库,因此您对这种通信有一点时髦的感觉。您可能想看看它是如何在那里完成的。不确定是否可以在 JSON 解析方面做得更好。

    HTH, 亚历克斯。

    【讨论】:

      猜你喜欢
      • 2012-02-19
      • 1970-01-01
      • 2016-09-10
      • 2011-11-23
      • 1970-01-01
      • 2013-08-04
      • 2020-08-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多