首页 > 作文

如何利用Spring MVC实现RESTful风格

更新时间:2023-04-05 20:11:35 阅读: 评论:0

springmvc实现restful风格

restful

中文释义为”表现层状态转换“,它不是一种标准,而是一种设计风格。

它的主要作用是充分并正确利用http协议的特性,规范资源获取的uri路径。

通俗的讲,restful风格的设计允许将参数通过url拼接传到服务端,目的是让url看起来更简洁实用。

并且对于不同的操作,要指定不同的http方法(post/get/put/delete)。可以这么说,只要是具有上述相关条件和原则的应用程序或设计就可以被称为restful风格的应用。

一个满足restful的程序或设计应满足以下条件和约束:

第一:对请求的url进行规范,在url中不会出现动词,而是使用http协议的动词

第二:充分利用http方法,http方法名包括:get、post、put、patch、delete

使用spring mvc实现restful风格

spring mvc可以使用@requestmapping的路径设置,结合@pathvariable的参数指定,来实现restful风格的请求。

样例要实现,通过拼接水果商品的id来实现一个restful风格的请求,并向后台发送该请求,以此来获取json格式的水果数据

在该方法中,在@requestmapping注解的请求路径中添加了一个动态数据”{id}”,它的作用是解析前台的请求路径,将动态数据所在的位置解析为名为id的请求参数。

@pathvariable注解,在其中指定请求参数的key名称,并映射在后面定义的形参上,这里定义fruitid形参来接收名为id的请求参数,最后使用@responbody注解加上之前配置的类型转换器,返回客户端json类型的水果详细信息,总的来说,利用sprngmvc实现restful风格主要就是在于请求路径和请求参数的映射,以及requestmapping的指定,更改web.xml中配置文件的内容,将*.do改成”/”,这样编写的restful风格的请求才能被前端控制器拦截到并解析。

然后重启工程,输入网址:http://localhost:8080/工程袱组词和拼音名/queryfruit/1

上面的代码为查询类型的请求代码,而新增、修改以及删除的请求与此类似,区别就是需要指定不同的requestmethod(post/put/delete),样例代码如下:

前端在访问restful风格的增、删、该请求时,需要配置http请求的方法(method参数)。如果是在jsp页面上使用form表单的提交方式来请求restful风格的服务,需要根据请求的类型,在form表单标签中指定http请求的相关method参数。

静态资源访问问题

前面在web.xml中配置了符合restful风格的dispatcherrvlet前端控制器过滤器。但是这种过滤方式会造成静态资源无法访问的问题,例如:在webcontent下的image文件夹下放置一张图片logo.jpg。

由于图片放置在web-inf文件外(由于javaweb的保护机制,web-inf文件夹下的文件不可直接访问),所以原则上是可以通过直接访问静态资源的方式获取该图片的,但是输入http://localhost:8080/工程名/image/logo.jpg的请求后,不能获取到图片资源。

原因:

在web.xml中配置了前端控制器的请求过滤机制,为了接收restful风格的请求,将过滤的后缀去除了,变成过滤所有后缀的请求路径,此时静态资源会被当做一个业务请求被前端控制器处理,前端控制器没有发现能够处理该请求的controller控制器方法,所以对外抛出了404错误。

解决方式一:

在类加载配置文件springmvc中使用”mvc:resources”配置静态资源的解析路径,将需要加载的静态资源的uri路径配置在标签中,然后配置该uri映射的真是资源路径。

当在springmvc.xml中配置了静态资源文件的解析路径后,前端控制器就会根据请求url中的具体子路径来映射出静态资源的真是路径,然后为前端反馈真实的静态资源信息。

解决方式二:

在springmvc.xml中使用”<mvc:default-rvlet-handler/&g特殊数字t;”配置默认的rvlet处理器,该配置将在springmvc上下文中定义一个defaultrvlethttprequesthandler,他会对进入dispatcherrvlet的请求进行筛选,若发现没有经过映射的请求,就将该请求交由web应用服务器默认的rvlet处理,如果不是静态资源的请求,才由dispatcherrvlet前端控制器继续处理,此时就可以将请求中的静态资源和其他业务请求分开处理,从而正常地返回静态资源信息。

spring mvc的restful学习

什么restful

restful也称为rest(reprentational state transfer),可以将它理解为一种软件架构风格或设计风格

restful风格就是把请求参数编程请眉山车辆厂求路径的一种风格。

例如,传统的url请求如下:

而采用restful风格后,url请求变为:

restful风格在http请求中使用put,delete,post和get方式分别对应添加,删除,修改和查询的操作。不过国内开发目河的成语开头前只使用post和get方式实现增删改查操作。

使用简单的加法计算

以上为个人经验,希望能湖北高校给大家一个参考,也希望大家多多支持www.887551.com。

本文发布于:2023-04-05 20:11:29,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/8d24899dc08df11a7cdb221d3e513802.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:如何利用Spring MVC实现RESTful风格.doc

本文 PDF 下载地址:如何利用Spring MVC实现RESTful风格.pdf

下一篇:返回列表
标签:风格   路径   静态   资源
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图