SpringMVC删除与修改操作需要用DELETE,PUT请求方式提交。
但要知道浏览器form表单只支持GET与POST请求,而DELETE、PUT等method并不支持。
spring3.0添加了一个过滤器,可以将这些请求转换为标准的http方法,使得支持GET、POST、PUT与DELETE请求。
这个过滤器需要在web.xml文件中添加:
<filter>
<filter-name>HiddenHttpMethodFilter</filter-name>
<filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>HiddenHttpMethodFilter</filter-name>
<servlet-name>springmvc</servlet-name>
</filter-mapping>
注:其中springmvc是DispatcherServlet的servlet-name的名称,配成其他如/*等之类的页面请求会报错。
页面提交方式需转换成post提交方式(可写jquery方式提交表单)。
需要在页面上添加隐藏域告诉controller此请求是哪种请求方式:
<input type="hidden" name="_method" value="DELETE"/>
<input type="hidden" name="_method" value="PUT"/>
这样,就可实现删除与更新的操作了。
时间: 2024-11-05 22:55:45