一般在我们对数据库的操作有四种,查询,新增,删除,更改四种类型。对应HTTP协议中四类请求:GET,POST,DELETE,PUT。
但是在form标签中只有两种请求分别是:GET,POST
浏览器默认使用的是GET方法。普通的浏览器只支持GET、POST请求。如需要用到DELETE,PUT的话就需要在配置文件中配置过滤器HiddenHttpMethodFilter
代码如下:
<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>
在form表单中method必须是POST,然后设置隐藏域name必须是_method,value值(DELETE或者PUT)
控制层的代码:
method:必须与请求的method一致(也就是隐藏域的value值)