将JSP与AngularJS集成,在现实世界中是一个关注点吗?

时间:2014-03-08 04:52:45

标签: angularjs jsp integration

我是否正朝着正确的方向学习Angular JS?

我是AngularJS的新手,但设法运行一个包含AngularJS代码的jsp文件,并进行了测试计算/添加,并且运行良好。

后来当我搜索网络论坛时,我发现他们不应该一起工作,因为它可能会造成麻烦。

我使用过netbeans和GlassFish Server。

2 个答案:

答案 0 :(得分:15)

我不会将Servlet / JSP技术与SPA混合(单页应用程序....在您的情况下由angular驱动)。您可以做的是使用像SpringMVC(或Jersey)这样的工具,它具有单个JSP, 是您的角度驱动SPA。这样,您可以在初始响应中对初始HTML / JS / CSS有效负载进行大量控制。一旦加载了“app”,它与服务器的所有通信都是通过XHR调用完成的($ http或$ resource in angular)。 Spring使用@Controller创建这个非常简单,并为您提供所需的所有灵活性......例如Spring安全性和依赖注入。

我一直在闲暇时间做一些简单的事情来帮助java服务器方人员进入Angular。

这个想法是你有一个控制器在你向

发出GET请求时返回一个JSP
http://your.site.com/contextRoot

该页面将有JS / CSS链接加载Bootstrap / JQuery / Angular / Whatever ...从那里角度路由器将启动,你的URL可能会像这样结束

http://...../contextRoot#home

客户端和服务器上运行角度的JSP之间的所有通信都是使用$ http调用完成的,你可以在Spring中使控制器来处理所有这些。

一旦我有了“Springular”应用程序,我就会回复这里

答案 1 :(得分:12)

这很大程度上取决于您希望如何使用每个部件。 Angular是一个完整的MVC,所以如果你期望在后端使用完整的JSP框架而在前端使用Angular,你可能会遇到一些奇怪的情况。似乎大多数人所做的是在前端主要提供静态Angular,并让它与REST服务器通信,他们使用他们喜欢的任何后端语言编程。所以你真的做了两件事情,最终完全分开:编写前端MVC代码,然后编写后端REST API。

有关更深入的讨论,您可以查看:

AngularJS client MVC pattern?

http://draptik.github.io/blog/2013/07/13/angularjs-example-using-a-java-restful-web-service/

AngularJS with Spring-mvc