SpringMVC使用restful开发时,修改jsp中的method为PUT或DELETE

我们知道SpringMVC中的RESTful风格,它不是一套标准,只是一种开发方式,架构思想,使用这种方式的话,url更加简洁,有利于不同系统之间的资源共享。RESTful具体来讲就是HTTP协议的四种形式,它有四种基本操作:
1.GET:获取资源;对应注解——@GetMapping
2.POST:新建资源;对应注解——@PostMapping
3.PUT:修改资源;对应注解——@PutMapping
4.DELETE:删除资源;对应注解——@DeleteMapping

在form表单中,我们填好action后,method为post或get,并没有DELETE和PUT,怎么办?解决如下:

    <td>
       <form action="${pageContext.request.contextPath}/delete/${course.id}" method="post">
           <button class="btn btn-danger btn-sm delete_btn" type="submit">
               <input type="hidden" name="_method" value="DELETE"/>
               <span class="glyphicon glyphicon-trash">删除</span>
           </button>
       </form>
    </td>

我们通过隐藏的input域,再结合过滤器:

  <filter>
    <filter-name>hiddenHttpMethodFilter</filter-name>
    <filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>hiddenHttpMethodFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

将当前的post请求转换为DELETE请求

发布了24 篇原创文章 · 获赞 15 · 访问量 6123

猜你喜欢

转载自blog.csdn.net/weixin_42173451/article/details/101370979
今日推荐