【问题标题】:Spring for browser and web service [closed]用于浏览器和 Web 服务的 Spring [关闭]
【发布时间】:2016-07-10 20:48:33
【问题描述】:

我要创建一个具有AngularJSSpring 的项目。

Spring 层也需要是WebService 层,但Spring WebServicesSpringMVC 中的服务是相同的。

问题是:

我应该用 SpringMVC 制作 2 层(MVC 将调用 WS)和 WS 还是将所有东西都放在同一层中?

如果是2层,如何通过MVC(Controllers)调用WS

编辑以添加一些示例:

AngularJS 通过 Cars 页面 {myURL/cars} 调用 {myURL}/cars/list

WS 只需调用 {myURL}/cars/list

疑问是为 AngularJS 提供一个为两者(AngularJS 和 WS 调用)提供服务的体系结构的页面

【问题讨论】:

    标签: java angularjs spring web-services spring-mvc


    【解决方案1】:

    在我看来,您的方法可能是:在服务层、spring bean 或@Service bean 中实现业务逻辑,那么您应该使用您之前实现的服务创建一个“端点”层,将它们公开为一组端点中的 Web 服务肥皂,并为您的 angularJS 应用程序部分公开它们。这样,在您的 restController(rest part) 和 enpointPart(SpringWS) 中,您可以受益于相同的业务逻辑,但您可以在两种使用方式中使用相同的逻辑。

    考虑到 SpringWS(当您谈论 Spring WebService 时,我假设您正在谈论 SpringWS 推动 Spring 中的 WebService 技术)您已经注册了 DispatcherMessageServlet 并且这个 fornt 控制器 servlet 将位于与 DispatcherServlet 不同的 url 映射下.

    你可以做这样的想法更好:

    1. /app-context/your-html-pageurl 用于演示文稿中的 html 层
    2. /app-context/api/your-rest-api-url 用于您的@RestController
    3. /app-context/service/* 用于您的 ws(在本例中为肥皂)层

    我希望这对您有用,并且我很好地理解了您的问题。

    【讨论】:

    • 我在这里搜索并看到了方法:创建spring控制器只是为了提供html页面和rest控制器分开。具有不同 url 的 html 层和 rest 层也是如此。例如:myurl/system/cars & myurl/api/cars/list
    • 是的,这是一个不错的选择,我只需编辑我的答案以在此下划线
    猜你喜欢
    • 2013-05-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-22
    • 2014-08-06
    • 1970-01-01
    • 2012-09-25
    • 1970-01-01
    相关资源
    最近更新 更多