亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

目錄
PUT和Delete請求使用
我們可以通過如下三個步驟實現(xiàn)
解決辦法
如何支持put/delete請求
1.在application.properties中配置
2.使用時依舊和springmvc一樣
首頁 Java java教程 SpringBoot中的PUT和Delete請求怎么使用

SpringBoot中的PUT和Delete請求怎么使用

May 13, 2023 pm 12:16 PM
delete springboot put

PUT和Delete請求使用

在Form表單中,只支持get和post方式,而為了實現(xiàn)put方式

我們可以通過如下三個步驟實現(xiàn)

1)SpringMVC中配置HiddenHttpMethodFilter

2)頁面創(chuàng)建一個post表單

3)創(chuàng)建一個input項,name="_method",值就是指定的請求方式

其中在HiddenHttpMethodFilter類中

SpringBoot中的PUT和Delete請求怎么使用

獲取"_method"的值,得到新的請求方式。

SpringBoot中的PUT和Delete請求怎么使用

<input type="hidden" name="_method" value="put" th:if="${employee!=null}"/>

其中th標簽是thymeleaf模板,表示只有當employee不為空時才生效,而value中的put不區(qū)分大小寫。

當時在新版本的SpringBoot中,這個put請求不發(fā)生作用。原因是因為springboot自動配置,幫我們省略了第一步的配置,上面代碼方法就是為了實現(xiàn)自動配置,但是因為注解@ConditionalOnProperty限制了自動配置,默認false不開啟配置,所以頁面的put提交無法使用。

解決辦法

properties配置文件中配置,使之開啟自動配置: spring.mvc.hiddenmethod.filter.enabled=true。

此外,DELETE請求也可以同樣這樣設置。

<form th:action="@{/emp/}+${emp.id}" method="post">
	<input type="hidden" name="_method" value="delete"/>
	<button type="submit" class="btn btn-sm btn-danger" > 刪除</button>
</form>

如何支持put/delete請求

學過mvc的都知道,想要支持這兩種特殊的請求,首先就要在web.xml中配置下面的過濾器:

<!--增加一個HiddenHttpMethodFilter過濾器:目的是給普通瀏覽器 增加put|delete請求方式-->
    <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>

而SpringBoot就沒有這么麻煩了,因為他已經(jīng)默認幫我們把HiddenHttpMethodFilter納入到IOC容器中了,所以他的使用及其簡單:

1.在application.properties中配置

#開啟支持put delete請求的過濾器
spring.mvc.hiddenmethod.filter.enabled=true

2.使用時依舊和springmvc一樣

只需要在post請求方式的form表單中加入下面的隱藏域:

     <!--http請求方式-->
     <form action="..."  method="post">
         <input type="hidden" name="_method" value="put" />
         <!--value值改成delete 請求方式就為delete了-->
     </form>

注意上面隱藏域的name必須為 “_method”,如果想要修改,則需要給IOC加入下面的bean:

@Bean
public HiddenHttpMethodFilter hiddenHttpMethodFilter(){
    HiddenHttpMethodFilter methodFilter = new HiddenHttpMethodFilter();
    methodFilter.setMethodParam("_m");//將隱藏域 _method --> _m
    return methodFilter;
}

以上是SpringBoot中的PUT和Delete請求怎么使用的詳細內容。更多信息請關注PHP中文網(wǎng)其他相關文章!

本站聲明
本文內容由網(wǎng)友自發(fā)貢獻,版權歸原作者所有,本站不承擔相應法律責任。如您發(fā)現(xiàn)有涉嫌抄襲侵權的內容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅動的應用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機

Video Face Swap

Video Face Swap

使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

熱門話題

Laravel 教程
1597
29
PHP教程
1488
72
Springboot怎么集成Jasypt實現(xiàn)配置文件加密 Springboot怎么集成Jasypt實現(xiàn)配置文件加密 Jun 01, 2023 am 08:55 AM

Jasypt介紹Jasypt是一個java庫,它允許開發(fā)員以最少的努力為他/她的項目添加基本的加密功能,并且不需要對加密工作原理有深入的了解用于單向和雙向加密的高安全性、基于標準的加密技術。加密密碼,文本,數(shù)字,二進制文件...適合集成到基于Spring的應用程序中,開放API,用于任何JCE提供程序...添加如下依賴:com.github.ulisesbocchiojasypt-spring-boot-starter2.1.1Jasypt好處保護我們的系統(tǒng)安全,即使代碼泄露,也可以保證數(shù)據(jù)源的

怎么在SpringBoot中使用Redis實現(xiàn)分布式鎖 怎么在SpringBoot中使用Redis實現(xiàn)分布式鎖 Jun 03, 2023 am 08:16 AM

一、Redis實現(xiàn)分布式鎖原理為什么需要分布式鎖在聊分布式鎖之前,有必要先解釋一下,為什么需要分布式鎖。與分布式鎖相對就的是單機鎖,我們在寫多線程程序時,避免同時操作一個共享變量產(chǎn)生數(shù)據(jù)問題,通常會使用一把鎖來互斥以保證共享變量的正確性,其使用范圍是在同一個進程中。如果換做是多個進程,需要同時操作一個共享資源,如何互斥呢?現(xiàn)在的業(yè)務應用通常是微服務架構,這也意味著一個應用會部署多個進程,多個進程如果需要修改MySQL中的同一行記錄,為了避免操作亂序導致臟數(shù)據(jù),此時就需要引入分布式鎖了。想要實現(xiàn)分

SpringBoot怎么自定義Redis實現(xiàn)緩存序列化 SpringBoot怎么自定義Redis實現(xiàn)緩存序列化 Jun 03, 2023 am 11:32 AM

1、自定義RedisTemplate1.1、RedisAPI默認序列化機制基于API的Redis緩存實現(xiàn)是使用RedisTemplate模板進行數(shù)據(jù)緩存操作的,這里打開RedisTemplate類,查看該類的源碼信息publicclassRedisTemplateextendsRedisAccessorimplementsRedisOperations,BeanClassLoaderAware{//聲明了key、value的各種序列化方式,初始值為空@NullableprivateRedisSe

springboot讀取文件打成jar包后訪問不到怎么解決 springboot讀取文件打成jar包后訪問不到怎么解決 Jun 03, 2023 pm 04:38 PM

springboot讀取文件,打成jar包后訪問不到最新開發(fā)出現(xiàn)一種情況,springboot打成jar包后讀取不到文件,原因是打包之后,文件的虛擬路徑是無效的,只能通過流去讀取。文件在resources下publicvoidtest(){Listnames=newArrayList();InputStreamReaderread=null;try{ClassPathResourceresource=newClassPathResource("name.txt");Input

Springboot+Mybatis-plus不使用SQL語句進行多表添加怎么實現(xiàn) Springboot+Mybatis-plus不使用SQL語句進行多表添加怎么實現(xiàn) Jun 02, 2023 am 11:07 AM

在Springboot+Mybatis-plus不使用SQL語句進行多表添加操作我所遇到的問題準備工作在測試環(huán)境下模擬思維分解一下:創(chuàng)建出一個帶有參數(shù)的BrandDTO對象模擬對后臺傳遞參數(shù)我所遇到的問題我們都知道,在我們使用Mybatis-plus中進行多表操作是極其困難的,如果你不使用Mybatis-plus-join這一類的工具,你只能去配置對應的Mapper.xml文件,配置又臭又長的ResultMap,然后再去寫對應的sql語句,這種方法雖然看上去很麻煩,但具有很高的靈活性,可以讓我們

SpringBoot與SpringMVC的比較及差別分析 SpringBoot與SpringMVC的比較及差別分析 Dec 29, 2023 am 11:02 AM

SpringBoot和SpringMVC都是Java開發(fā)中常用的框架,但它們之間有一些明顯的差異。本文將探究這兩個框架的特點和用途,并對它們的差異進行比較。首先,我們來了解一下SpringBoot。SpringBoot是由Pivotal團隊開發(fā)的,它旨在簡化基于Spring框架的應用程序的創(chuàng)建和部署。它提供了一種快速、輕量級的方式來構建獨立的、可執(zhí)行

jQuery中如何使用PUT請求方式? jQuery中如何使用PUT請求方式? Feb 28, 2024 pm 03:12 PM

jQuery中如何使用PUT請求方式?在jQuery中,發(fā)送PUT請求的方法與發(fā)送其他類型的請求類似,但需要注意一些細節(jié)和參數(shù)設置。PUT請求通常用于更新資源,例如更新數(shù)據(jù)庫中的數(shù)據(jù)或更新服務器上的文件。以下是在jQuery中使用PUT請求方式的具體代碼示例。首先,確保引入了jQuery庫文件,然后可以通過以下方式發(fā)送PUT請求:$.ajax({u

SpringBoot中的@Import注解怎么使用 SpringBoot中的@Import注解怎么使用 May 31, 2023 pm 06:25 PM

一、@Import引入普通類@Import引入普通的類可以幫助我們把普通的類定義為Bean。@Import可以添加在@SpringBootApplication(啟動類)、@Configuration(配置類)、@Component(組件類)對應的類上。注意:@RestController、@Service、@Repository都屬于@Component@SpringBootApplication@Import(ImportBean.class)//通過@Import注解把ImportBean

See all articles