Spring Boot 中 form 表单发送 put、delete 请求

步骤:针对 SpringBoot 1.x 版本,2.x版本好像需要全局配置文件配置spring.mvc.hiddenmethod.filter.enabled=true

1.配置 HiddenHttpMethodFilter

        Spring Boot 已经为我们自动配置了HiddenHttpMethodFilter类,所以就不需要我们来配置了。该部分的配置在 WebMvcAutoConfiguration 类下,它会通过@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♪(・ω・)ノ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

扛麻袋的少年

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值