Spring MVC与JAX-RS比较与分析 - 编程入门网
);
card.setCreditCardNumber(creditCardNumber);
card.setExpirationDate(expirationDate);
}
然而,随着表单数据量的增加,这种处理方式就会变得不切实际。借助于数据绑定,Spring MVC可以 创建、组装并传递包含有嵌套数据(账单地址、邮件地址等)、任意结构的表单对象。
要想与Web浏览器协同工作,表单处理是个重要环节。另一方面,Web Services客户端一般会在请求体 中提交XML或JSON格式的数据。 处理请求体中的数据 无论是Spring MVC还是JAX-RS都能够自动处理请求体中的数据:
JAX-RS中的请求体数据 在JAX-RS中,类型MessageBodyReader的实体供应者负责转换请求体数据。JAX-RS的实现需要拥有一个 JAXB MessageBodyReader,这可以使用具有注解@Provider的客户化MessageBodyReader实现。 Spring MVC与JAX-RS比较与分析(8)时间:2011-10-22 infoq 译:张龙Spring MVC中的请求体数据 在Spring MVC中,如果想通过请求体数据初始化方法参数,那可以将@RequestBody注解加到该方法参 数前,这与之前介绍的表单参数初始化正好相反。 在Spring MVC中,HttpMessageConverter类负责转换请求体数据,Spring MVC提供了一个开箱即用的 Spring OXM HttpMessageConverter。它支持JAXB、Castor、JiBX、XMLBeans和XStream,此外还有一个用 于处理JSON的Jackson HttpMessageConverter。 HttpMessageConverter会注册到AnnotationMethodHandlerAdapter上,后者会将到来的请求映射到 Spring MVC @Controllers上。下面是其配置:
下图阐述了该配置: Spring 3新增的mvc客户化命名空间将上述配置自动化了,只需增加如下配置片段即可: <mvc:annotation-driven /> 如果JAXB位于类路径上,它会注册一个用于读写XML的转换器;如果Jackson位于类路径上,它会注册 一个用于读写JSON的转换器。 准备响应 典型的响应需要准备响应代码、设定HTTP响应头、将数据放到响应体当中,还需要处理异常。 Spring MVC与JAX-RS比较与分析(9)时间:2011-10-22 infoq 译:张龙使用JAX-RS设定响应体数据 在JAX-RS中,要想将数据加到响应体中,只需要从资源方法中返回对象即可:
JAX-RS会寻找类型MessageBodyWriter的实体供应者,它能将 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |