我正在学习Spring Core认证,我对Spring MVC如何处理REST Web服务有所怀疑。
阅读文档我发现了这个例子:
@RequestMapping(value="/orders", method=RequestMethod.GET)
public void listOrders(Model model) {
// find all Orders and add them to the model
}
@RequestMapping(value="/orders", method=RequestMethod.POST)
public void createOrder(HttpServletRequest request, Model model) {
// process the order data from the request
}
好的,它显示了2个Spring MVC方法(我认为应该声明为控制器类,是真的)。
这些方法都处理对 / orders 资源的HTTP请求(根据REST样式,其中资源被视为管理一种数据的编程元素和国家并提供此类处理)。
在这种情况下,如果对 / orders 的HTTP请求为 GET ,则会执行 listOrders()方法返回所有对象的列表,但如果对 / orders 的请求是 POST ,它将执行创建新订单的 createOrder()
那究竟是什么意思,使用 @RequestMapping 注释的方法参数我可以根据RESTful样式处理HttpRequest?
答案 0 :(得分:1)
REST是一种体系结构样式,它使用各种HTTP方法对资源上的操作建模。
Spring @RequestMapping
注释只是将处理程序方法映射到HTTP请求的一种方法。 method
属性只是限制带注释的方法可以处理哪些HTTP方法。