步骤:针对 SpringBoot 1.x 版本,2.x版本好像需要全局配置文件配置spring.mvc.hiddenmethod.filter.enabled=true
1.配置 HiddenHttpMethodFilter
;
Spring Boot 已经为我们自动配置了HiddenHttpMethodFilter
类,所以就不需要我们来配置了。该部分的配置在 WebMvcAutoConfiguration
类下,它会通过code>@ConditionalOnMissingBean(HiddenHttpMethodFilter.class)这个条件来判断该过滤器是否需要自动配置。如果容器中已经存在 HiddenHttpMethodFilter 对象,就不会自动配置。
@Configuration
@ConditionalOnWebApplication
@ConditionalOnClass({
Servlet.class, DispatcherServlet.class,WebMvcConfigurerAdapter.class })
@ConditionalOnMissingBean(WebMvcConfigurationSupport.class)
@AutoConfigureOrder(Ordered.HIGHEST_PRECEDENCE + 10)
@AutoConfigureAfter({
DispatcherServletAutoConfiguration.class,ValidationAutoConfiguration.class })
public class WebMvcAutoConfiguration {
public static final String DEFAULT_PREFIX = "";
public static final String DEFAULT_SUFFIX = "";
/** * HiddenHttpMethodFilter过滤器 */
@Bean
@ConditionalOnMissingBean(HiddenHttpMethodFilter.class)
public OrderedHiddenHttpMethodFilter hiddenHttpMethodFilter() {
return new OrderedHiddenHttpMethodFilter();
}
//省略部分代码
}
2.页面创建一个 <form>
表单,表单提交方式为 "post"
;
<!--创建 form表单,指定为 post 方式提交-->
<form th:action="@{/user}" method="post">
<div class="form-group">
<label>LastName</label>
<input name="lastName" type="text" class="form-control" placeholder="zhangsan" th:value="${user.lastName}">
</div>
<div class="form-group">
<label>Email</label>
<input name="email" type="email" class="form-control" placeholder="zhangsan@qq.com" th:value="${user.email}">
</div>
</form>
3.在 <form>
表单中,创建一个 input 框,name="_method",value 值就是我们指定的请求方式。
<form th:action="@{/user}" method="post">
<!--添加隐藏域,指定 name="_method" ,此处指定为"put请求"-->
<input type="hidden" name="_method" value="put"/>
<!--指定vlaue="delete" 即表示发送 delete 请求-->
<!--<input type="hidden" name="_method" value="delete"/>-->
<div class="form-group">
<label>LastName</label>
<input name="lastName" type="text" class="form-control" placeholder="zhangsan" th:value="${user.lastName}">
</div>
<div class="form-group">
<label>Email</label>
<input name="email" type="email" class="form-control" placeholder="zhangsan@qq.com" th:value="${user.email}">
</div>
</form>
博主写作不易,来个关注呗
求关注、求点赞,加个关注不迷路 ヾ(◍°∇°◍)ノ゙
博主不能保证写的所有知识点都正确,但是能保证纯手敲,错误也请指出,望轻喷 Thanks♪(・ω・)ノ