RESTful支持

作者: 常威爆打来福 | 来源:发表于2018-05-28 17:40 被阅读7次

一 简单介绍

RESTful架构,就是目前最流行的一种互联网软件架构。它结构清晰、符合标准、易于理解、扩展方便,所以正得到越来越多网站的采用。
RESTful(即Representational State Transfer的缩写)其实是一个开发理念,是对http的很好的诠释。
1 对url进行规范,写RESTful格式的url

  • 非REST的url:http://...../queryItems.action?id=001&type=T01
  • REST的url风格:http://..../items/001

2 http的方法规范

  • 不管是删除、添加、更新,等等。使用url是一致的,如果进行删除,需要设置http的方法为delete,其他同理。
  • 后台controller方法:判断http方法,如果是delete执行删除,如果是post执行添加。

3 对http的contentType规范

  • 请求时指定contentType,要json数据,设置成json格式的type,要key/value 数据设置成key/value的格式type。

二 测试

查询商品信息,输出json

1 controller

itemsView/{id}里边的{id}表示占位符,通过@PathVariable获取占位符中的参数,
@PathVariable中名称要和占位符一致,形参名无需和其一致
如果占位符中的名称和形参名一致,在@PathVariable可以不指定名称

    @RequestMapping("/resultView/{id}")
    public @ResponseBody ItemsCustom resultView(@PathVariable("id") Integer id) throws Exception{
        ItemsCustom list= itemsService.findItemsById(id);
        return  list;
    }
  • @RequestMapping(value="/ itemsView/{id}"):{×××}占位符,请求的URL可以是/viewItems/1121或/viewItems/212121,通过在方法中使用@PathVariable获取{×××}中的×××变量。
  • @PathVariable用于将请求URL中的模板变量映射到功能处理方法的参数上。如果@RequestMapping中表示为/itemsView/{id},id和形参称一致,@PathVariable不用指定名称。

2 SpringMvc

  <servlet>
      <!--spring mvc 前端控制器-->
      <servlet-name>springmvc_result</servlet-name>
      <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
      <init-param>
          <!--contextConfigLocation配置springmvc加载的配置文件(配置处理器,映射器,适配器等)
          若不配置,默认加载WEB-INF/servlet名称 -servlet(springmvc-servlet.xml)
          -->
          <param-name>contextConfigLocation</param-name>
          <param-value>classpath:spring/springmvc.xml</param-value>
      </init-param>
  </servlet>
    <!--第一种:*.action,访问以.action结尾,由DispatcherServlet进行解析
        第二种: /,所有访问的地址由DispatcherServlet进行解析,对静态文件的解析需要配置不让DispatcherServlet进行解析,
        使用此种方式实现RESTful风格的url
        第三种:/*,错误-->
    <servlet-mapping>
        <servlet-name>springmvc_result</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
测试结果

三 总结

在以前配置springmvc前端控制器时,我们是用*.action配置,访问以.action结尾,由DispatcherServlet进行解析。
在我们使用RESTful支持时,我们使用/配置,所有访问的地址由DispatcherServlet进行解析,对静态文件的解析需要配置不让DispatcherServlet进行解析,使用此种方式实现RESTful风格的url。所以,在我们使用RESTful时,应对静态文件进行配置
SpringMVC.xml

    <!--静态资源的解析-->
    <mv:resources mapping="/js/**" location="/js/" />

相关文章

  • Spring Boot 构建⼀一个 RESTful Web 服务

    Spring Boot 对 RESTful 的⽀支持 Spring Boot 全⾯面⽀支持开发 RESTful 程...

  • RESTful支持

    一 简单介绍 RESTful架构,就是目前最流行的一种互联网软件架构。它结构清晰、符合标准、易于理解、扩展方便,所...

  • RESTful支持

    需求RESTful方式实现商品信息查询,返回json数据 添加DispatcherServlet的rest配置 @...

  • RESTful支持

    一、介绍 RESTful架构,就是目前最流行的一种互联网软件架构。它结构清晰、符合标准、易于理解、扩展方便,所以正...

  • ZStack RESTful API

    ZStack RESTful API ZStack 3.10.0 提供原生 RESTful 支持,可以通过 RES...

  • springmvc RESTful支持

    什么是restful?Restful就是一个资源定位及资源操作的风格。不是标准也不是协议,只是一种风格,是对htt...

  • SpringMVC -- RESTful支持

    一.RESTful简单介绍 RESTful架构,就是目前最流行的一种互联网软件架构。它结构清晰、符合标准、易于理解...

  • Spring MVC 与主流架构 RESTful 的集成

    前言 这一讲来学习 Spring MVC 对于 RESTful 架构的支持,首先简单了解什么是 RESTful。 ...

  • Requests05.请求类型&请求参数

    一、请求类型 requests支持restful规范的常用请求方式 restful规范的常用请求方式:GET:读取...

  • 接口选型分析

    需求: 支持接口文档自动生成,支持多格式,可快速迭代 支持团队协作,支持可视化操作 支持Restful API 支...

网友评论

    本文标题:RESTful支持

    本文链接:https://www.haomeiwen.com/subject/ahpgjftx.html