【发布时间】:2012-08-07 13:32:40
【问题描述】:
技术栈:Java 1.6、JPA (Hibernate 3)、Spring 3、Oracle 11g、JAX-RS (RESTEasy)、Freemarker、Spring Webflow、jQuery、JBoss5
你好,
目前我正在开展一个项目,其中我们有两组功能:
- 发布一组 Web 服务 (RESTful) 供外部客户端使用。
- 创建一组屏幕(大约 10 个),基本上允许执行管理功能,例如创建 MI 报告、设置新数据、配置和查看过去的数据。
我的方法是:
- 创建服务层
Webflow 和 Freemarker 模板调用此服务层上的方法。
并为 REST (@Path) 创建另一层组件,再次使用相同的服务层。
现在在一次设计会议上,有人提出以下建议:
- 将层分离为单独的模块(如在 maven 中)
-
为以下各项创建一个模块:
a2. RESTful 服务(带有服务层和 javax.ws.rs.Produces)
b2. 带有调用模块 a2 中发布的服务的服务层的屏幕。这将使用 org.apache.commons.httpclient.HttpClient 来调用 a2 服务。
我不确定我是否真的能看到好处,或者这是否是正确的方法。 我想也许我不理解建议的方法。
谁能详细说明哪种方法更好,为什么?
谢谢, 阿迪
【问题讨论】:
-
听起来不错,但使用 JAX-RS 不会使系统 RESTFull。为此,您必须考虑您的资源及其代表是什么。
标签: spring design-patterns rest maven