2

技术栈: Java 1.6、JPA (Hibernate 3)、Spring 3、Oracle 11g

你好,

我们目前正在重构我们的代码,以从基于 SOAP 的 Web 服务转移到 REST。我有很多 XSD,这些用于基于 SOAP 的 WS。并且使用这些模式文件生成了大量的 JAXB 类。

我的问题是我是否可以将相同的 JAXB 类用于 REST(输入和输出)。我没有使用 REST 的经验。

4

1 回答 1

4

它比你想象的要好。只需获取您之前用于 SOAP 端点的 JAXB 对象并从控制器返回它们:

public @ResponseBody JAXBElement<JaxbResponseType> 
controllerMethod(@RequestPayload JAXBElement<JaxbRequestType> request) {
    //...
}

Spring 看到 JAXB 注释,会自动将它们编组为 XML 和 JSON。这应该是一个很好的起点,更不用说您的 REST 服务将具有与 SOAP 类似的结构。

于 2012-07-24T14:16:28.383 回答