• springmvc中配置RESTful风格控制器


    一般的http请求中其实只需要get和post就可以满足项目需求了,而为什么还要使用restful可能就是为了使请求url看起来更加直观,好看吧。。

    restful常用的请求方式:get,post,put,patch,delete

    springmvc默认情况下对get和post支持的最好,像put,putch,delete其实也是支持的,只不过默认情况下只支持控制器接收url传递的参数,如果我们想要想post那样传递参数,需要我们在后端和前端做一些设置,比如在前端请求时手动设置请求头中的内容类型为json,后端还要配合前端设置控制器的参数接收一个请求体,而不是普通表单或url参数,使用requestBody注解来接收,springmvc会通过消息处理器来帮助json格式的请求体到java bean的转换,格外的麻烦,所以以下提供三种解决方案:

    1、修改tomcat的server.xml:

    <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" parseBodyMethods="POST,PUT,DELETE" URIEncoding="UTF-8" />

    经过测试这种是可行的,只是ajax请求时需要设置请求头为

    Content-Type: application/x-www-form-urlencoded

    请求数据的内容格式是这样name=bbba&age=22
    如果表单提交的话只需要设置请求编码application/x-www-form-urlencoded即可。
    2、在web.xml中添加HttpPutFormContentFilter

    参考 https://blog.csdn.net/geloin/article/details/7444590

    3、在web.xml中添加HiddenHttpMethodFilter

    参考 https://blog.csdn.net/geloin/article/details/7444321

    我比较推荐使用第3中解决方案,没有原因,个人喜好。。

  • 相关阅读:
    为公司转型做的一些准备——数据库设计技术
    jdbc多种实现方式
    JNuit
    JDBC初体验
    jsp原理
    jsp登陆
    jsp homework(*)
    集合(5)
    集合(4)
    集合(3)
  • 原文地址:https://www.cnblogs.com/hihtml5/p/8966616.html
Copyright © 2020-2023  润新知