【问题标题】:AngularJS with Spring-mvc [closed]带有 Spring-mvc 的 AngularJS [关闭]
【发布时间】:2013-09-04 15:40:13
【问题描述】:

我最近遇到了 AngularJS。我是一名 Java Web 开发人员。我想将 AngularJS 与 Spring-MVC 框架一起使用。但我需要一些基本的基础(教程)才能开始。

我知道 AngularJS 的基本知识,但是如何将它与 Spring-MVC 集成。由于大多数时候 spring 它自己返回部分 jsp(s),我们使用 jsp-include 添加它们,而 AngularJS 大部分时间都需要 JSON 数据。

【问题讨论】:

    标签: spring-mvc angularjs


    【解决方案1】:

    两种情况:

    1. 您的架构是完整的客户端:在这种情况下,集成非常自然。 Spring MVC 将您的服务公开为 REST (JSON/XML),并且您使用 AngularJS 的客户端应用程序使用您的 JSON。在这里,.war 应用程序(Spring MVC)必须部署在 servlet 容器(例如 Tomcat)中,并且您的客户端应用程序可以部署在同一服务器或 HTTP 服务器(如 Nginx 或 Apache)中。

    2. 您希望将页面生成保留在服务器端,并且只使用 AngularJS 进行一些 DOM 操作,因此您的代码必须部署在同一个 .war 中(在 WEB-INF/ 文件夹内)。

    混合使用这两种方法并不总是一个好主意。您可以尝试Thymeleaf 留在服务器端页面生成,同时具有模板、可测试性和干净的视图代码。

    【讨论】:

    • 感谢您的洞察力。就战争(Spring-MVC)而言,我已经准备好使用 REST 服务的应用程序。它只是应该在我的视图中直接包含 .html 页面,或者我应该像往常一样使用 AngularJS 的 .jsp 页面,因为最终当它们在客户端呈现时它们是 html。
    • 如果您的应用程序是完整的 REST ,则无需使用 JSP 。它将引入复杂性,仅使用 HTML 文件。注意你的安全模型和授权,后端生成(JSP)和spring security的使用使用spring security的JSP标签库使事情变得非常容易,你需要在客户端手动处理这个。这个不错的指令可以帮助你github.com/witoldsz/angular-http-auth
    • 谢谢纳比尔。我会试试的。目前我将我的 shell 保留为 jsp 页面。所有部分都是 .html,但我一定会查看您提供的 github 链接。使用 HTML 我担心安全性
    • 您担心安全性是对的,而不是可靠性,而是在一行代码中实现 spring-security 为您执行的功能的努力。祝你好运
    • @PriyankThakkar Spring 团队有一个很好的教程,关于 angularjs + spring security spring.io/guides/tutorials/spring-security-and-angular-js
    【解决方案2】:

    如果您喜欢通过示例学习,可以尝试使用 jhipster 生成一些代码:https://jhipster.github.io/

    【讨论】:

      【解决方案3】:

      只需将 angular.js 文件设置为静态文件即可。无论如何,那里应该没有什么私人的。

      使用 Spring MVC 作为 REST 服务提供者,而不是 JSP/Velocity/任何其他模板视图解析器。

      您在以下网站上有示例项目:

      【讨论】:

      • 谢谢你。我将研究这些项目和讨论。
      • 第一个链接很好,谢谢
      猜你喜欢
      • 2013-09-27
      • 2016-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-01
      • 2010-09-16
      • 2015-11-29
      • 2013-05-25
      相关资源
      最近更新 更多