springmvc - RESTful

1、概念css

Server提供的RESTful API中,URL中只使用名词来指定资源,原则上不使用动词。“资源”是REST架构或者说整个网络处理的核心。好比: http://api.qc.com/v1/newsfeed: 获取某人的新鲜; http://api.qc.com/v1/friends: 获取某人的好友列表; http://api.qc.com/v1/profile: 获取某人的详细信息;前端

用HTTP协议里的动词来实现资源的添加,修改,删除等操做。即经过HTTP动词来实现资源的状态扭转: GET 用来获取资源, POST 用来新建资源(也能够用于更新资源), PUT 用来更新资源, DELETE 用来删除资源。java

  1. 即对url进行规范,
    非RESTful格式:http://.../queryItems.action?id=001&type=T001
    RESTful 格式:http://.../items/001
    特色:将参数经过url传递到服务端。spring

  2. 对http方法进行规范
    使用get获取资源、post新建资源、put来更新资源、delete来删除资源json

  3. 对http的contentType规范
    请求时指定 contentType ,须要json数据,设置成json的type。。api

2、方法定义网络

需求:查询商品信息,返回json数据。
方法:使用RESTful风格的url,将查询商品信息的id传入controller。输出json使用@ResponseBody 将java对象输出json。架构

3、使用url模板映射来传递参数mvc

使用**@RequestMapping("/itemsView/{id}")@PathVariable("id") Integer id **来传递参数信息。app

@RequestMapping("/itemsView/{id}")
public @ResponseBody ItemsCustom itemsView(@PathVariable("id") Integer id) throws Exception {
    ItemsCustom itemsCustom = itemsService.findItemsById(id);
    return itemsCustom;
}

4、对静态资源进行解析

使用RESTful风格的url方式须要对静态资源进行解析:
配置前端控制器的 url-partten 中指定 "/" ,对静态资源的解析则出现问题。
在springmvc.xml中添加静态资源的解析方法。

<!-- 静态资源解析:包括js、css。img... -->
<mvc:resources mapping="/js/**" location="/js/"/>
<mvc:resources mapping="/img/**" location="/img/"/>
相关文章
相关标签/搜索