springmvc对RESTful得支持
RESTful架构,就是目前最流行得一种互联网软件架构。它结构清晰、符合标准、易于理解、扩展方便,所以挣得到越来越多网站的采用。

RESTful(即Representational State Transfer变现层状态转换)其实是一个开发理念,是对http 的很好的诠释。

状态转换(State Transfer)
客户端用到的手段,只能是HTTP协议。具体来说就是HTTP协议里面四个表示操作方式的动词:GET/POST/PUT/DELETE,分别对应四中基本操作:GET用来获取资源,POST用来新建资源(也可以用来更新资源),put(用来更新资源),DELETE用来删除资源。

1、对url进行规范,写成RESTful格式的url

非RESTful的uri: http://.../queryitems?id=001&type=T01
RESTful的url风格:http://.../items/001
特点:url简洁,将参数通过url传到服务端

2、对http的方法进行规范
不管是删除、添加、更新。。。使用url是一致的,如果需要进行删除,需要设置http的方法为delete,同理添加。。。

后台controller方法:判断http方法,如果是delete执行删除,如果是post执行添加

3、对http的contentType进行规范
请求时指定contentType,要json数据,设置成json格式的type

REST的例子,实现1,3

1、需求:
查询商品信息,返回json数据
2、controller
定义方法,进行url映射使用REST风格的url,将查询商品信息的id传入controller.

输出json使用@ResponseBody将java对象输出json

//查询商品信息,输出json
@RequestMapping("/itemsView/{id}/{type}")
public @ResponseBody ItemsCustom itemsView(@PathVariable("id") Integer id,@PathVariable("type") String type)throws Exception{
  //调用service查询商品信息
  ItemsCustom itemsCustom = itemsService.query(id,type);  

  return itemsCustom;
}

@RequestMapping(value="/viewItems/{id}"):{xxx}占位符,请求的URL可以是"/viewItems/1"或"/viewItems/2",通过在方法中使用@PathVariable获取{xxx}中的xxx变量

@PathVariable用于将请求URL中的模板变量映射到功能处理方法的参数上。

springmvc的RESTful风格的更多相关文章

  1. SpringMVC实现Restful风格的WebService

    1.环境 JDK7 MyEclipse2014 tomcat8 maven 3.3.3 spring4.1.4 2.创建maven工程 使用MyEclipse创建maven工程的方式可以参考这篇博文( ...

  2. [五]SpringMvc学习-Restful风格实现

    1.Restful风格的资源URL 无后缀资源的访问(csdn用法) 2.SpringMvc对Rest风格的支持 2.1将 /*.do改为/ 2.2 3.@PathVariable获取Url变量 @R ...

  3. SpringMVC 构建Restful风格 及问题处理

    基本的请求URL: /person/{id}  GET  得到id的person /person POST      新增person /person/{id}  PUT  更新id的person / ...

  4. SpringMVC响应Restful风格请求404

    在学习Springmvc时,使用Restful风格的url,页面提示404错误.为找到原因,编写一个简单的Restful测试用例如下: jsp页面: <a href="user/tes ...

  5. SpringMVC 之 RESTful 风格的增删改查

    1. 视图和视图解析器 视图解析器 请求处理方法执行完成后,最终返回一个ModelAndView对象,对于返回String,View 或 ModelMap 等类型的处理方法, SpringMVC 也会 ...

  6. springMvc中restful风格的api路径中把小数点当参数,SpringMvc中url有小数点

    在springMvc web项目中restful风格的api路径中有小数点会被过滤后台拿不到最后一个小数点的问题, 有两种解决方案: 1:在api路径中加入:.+ @RequestMapping(&q ...

  7. springMvc使用restful风格

    转载:https://blog.csdn.net/weide_java/article/details/53793769 1,REST架构师一个抽象的概念,目前主要是基于HTTP协议实现,其目的是为了 ...

  8. Restful风格API接口开发springMVC篇

    Restful风格的API是一种软件架构风格,设计风格而不是标准,只是提供了一组设计原则和约束条件.它主要用于客户端和服务器交互类的软件.基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机 ...

  9. SpringMvc笔记-对RESTFUL风格的配置

    1.@RequestMapping注解可以使用如下参数: 1,params:例如params={'username',"age!=100"}表示需要usernmame并且age 属 ...

随机推荐

  1. 一次rna-seq的过程-知乎live转

    数据分析流程 来自知乎孟浩巍的“快速入门生物信息学的”Live,超棒的~ 1.数据质控 首先是质控部分,使用fastqc进行对结果分析. 对于Illumia二代测序的结果质控包括两个方面,去掉测序质量 ...

  2. Deep learning Reading List

    本文来自:http://jmozah.github.io/links/ Following is a growing list of some of the materials i found on ...

  3. PHPcms 调用命令的基本格式:

    PHPcms 调用命令的基本格式: 开始:{pc:content action="模块操作名" catid="调用栏目ID" num="数据调用数量& ...

  4. CNN学习笔记:神经网络表示

    CNN学习笔记:神经网络表示 双层神经网络模型 在一个神经网络中,当你使用监督学习训练它的时候,训练集包含了输入x还有目标输出y.隐藏层的含义是,在训练集中,这些中间节点的真正数值,我们是不知道的,即 ...

  5. Spring MVC 了解WebApplicationContext中特殊的bean类型

    Spring MVC 了解WebApplicationContext中特殊的bean类型 Spring的DispatcherServlet使用了特殊的bean来处理请求.渲染视图等,这些特定的bean ...

  6. powerdesigner解决创建多个表表主键名称重复的问题

    选择菜单栏的tools选项,选择Model  Options..,选择Model Settings  只要将图片中的选择打钩去掉即可(操作步骤1),同时设置为默认选项(操作步骤2),防止以后问题又出现 ...

  7. 请求库之requests,selenium

    requests模块 一.介绍 #介绍:使用requests可以模拟浏览器的请求,比起之前用到的urllib,requests模块的api更加便捷(本质就是封装了urllib3) #注意:reques ...

  8. java调用操作系统命令

    java的Runtime.getRuntime().exec(commandStr)可以调用执行cmd指令. cmd /c dir 是执行完dir命令后关闭命令窗口. cmd /k dir 是执行完d ...

  9. Android Gradle 构建工具(Android Gradle Build Tools)是什么?

    转载地址:http://mrfu.me/android/2015/07/17/New_Android_Gradle_Build_Tools/ 译者地址:[翻]一览新的 Android Gradle 构 ...

  10. bat脚本——删除当前文件夹的所有指定文件类型

    学了这个,就不用手动删除大量的指定的文件类型,可以做到双击bat处理文件就可以删除了 比如说,我要删除当前文件夹下的txt文件和doc文件,代码如下 del *.txt* del *.doc* 其原理 ...