最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java中@requestMappling注解的使用

 更新時間:2023年01月15日 09:57:17   作者:zjw_rp  
本文主要介紹了java中@requestMappling注解的使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

@RequestMapping注解的作用

從注解名稱上我們可以看到

@RequestMapping注解的作用就是將請求和處理請求的控制器方法關(guān)聯(lián)起來,建立映射關(guān)系。

SpringMVC 接收到指定的請求,就會來找到在映射關(guān)系中對應(yīng)的控制器方法來處理這個請求。

@RequestMapping注解的位置

@RequestMapping標(biāo)識一個類:設(shè)置映射請求的請求路徑的初始信息(基礎(chǔ)信息)
@RequestMapping標(biāo)識一個方法:設(shè)置映射請求請求路徑的具體信息

controller控制層

處理首頁的控制層(標(biāo)識在方法上)

@Controller
public class ProtalController {
    @RequestMapping("/")
    public String protal(){
        return "index";
    }
}

標(biāo)識在類上和方法

@Controller
//標(biāo)記到類上,設(shè)置當(dāng)前請求映射的基礎(chǔ)信息,方法上是具體信息
@RequestMapping("/test")
public class TestRequestMapplingController {
//    控制器方法所配置的請求的請求路徑為/test/hello
    @RequestMapping("/hello")
    public String hello(){
        return "success";
    }
}

thymeleaf渲染頁面(index.html)

<body>
<h1>index.html</h1>
<a th:href="@{/hello}" rel="external nofollow" >測@RquestMappling標(biāo)識注解的位置</a>
</body>

跳轉(zhuǎn)的頁面)(success,html)

<body>
<h1>跳轉(zhuǎn)成功</h1>
</body>

@RequestMapping注解的value屬性

value屬性通過請求的請求地址匹配請求映射。
value屬性是一個字符串類型的數(shù)組,
即當(dāng)前瀏覽器所發(fā)送的請求路徑匹配value屬性中的任何一個值
則當(dāng)前請求就會被注解所標(biāo)識的方法進(jìn)行處理。
value屬性必須設(shè)置,至少通過請求地址匹配請求映射。

@Controller
public class TestRequestMapplingController {
    @RequestMapping({"/hello","/second"})
    public String hello(){
        return "success";
    }
}

@RequestMapping注解的method屬性

作用:@RequestMapping注解的method屬性是一個RequestMethod類型的 數(shù)組,表示該請求映射能夠匹配多種請求方式的請求。

規(guī)定控制器的方法在請求路徑匹配的情況下,當(dāng)前控制器方法處理請求的請求方式是什么?

當(dāng)前請求路徑和請求方式都能匹配,控制器方法才能處理這個請求。

注意:

通過請求的請求方式匹配請求。
當(dāng)前瀏覽器所發(fā)送的請求方式匹配method屬性中的任何一種請求方式,
則當(dāng)前請求就會被注解所標(biāo)識的方法進(jìn)行處理。
若瀏覽器所發(fā)送的請求的請求路徑和@RequestMapping注解value屬性匹配,
但是請求方式不匹配此時,頁面報錯:405.....
get和post請求都可以匹配:method = {RequestMethod.GET,RequestMethod.POST}

@RequestMapping注解的method屬性通過請求的請求方式 (get或post) 匹配請求映射。

@RequestMapping(value = {"/hello","/second"},method = RequestMethod.GET )
    public String hello(){
        return "success";
    }

@RequestMapping注解使用ant風(fēng)格路徑

?:表示任意的單個字符
注意:? 是當(dāng)前請求路徑中路徑和參數(shù)分割符,所以地址中 ?前面才是路徑,? 后面當(dāng)成請求參數(shù)
* :表示任意的0個或多個字符
** :表示任意層數(shù)的任意目錄
注意:在使用**時,只能使用/**/xxx的方式

    @RequestMapping("/a?a/test/ant")
    public String testAnt(){
        return "success";
    }

thymeleaf渲染頁面

<a th:href="@{/aaa/test/ant}">測試測@RquestMappling注解支持ant風(fēng)格路徑</a>

@RequestMapping注解使用路徑中的占位符

原始方式:/deleteUser?id=1

rest方式:/user/delete/1

把傳輸服務(wù)器參數(shù)(例如下面的admin/1這兩個參數(shù))也作為路徑一部分,傳輸?shù)椒?wù)器中。
會把所有的內(nèi)容全部體現(xiàn)在路徑中,把id值傳過去就不用id和 ?
用原始方式是鍵值對,用rest方式該如何獲???,
就需要使用路徑中的占位符和@PathVariable注解。

thymeleaf渲染

<a th:href="@{/test/rest/admin/1}">測試測@RquestMappling的value屬性的占位符</a>

controller控制器

// {id}:占位符
    @RequestMapping("/test/rest/{username}/{id}")
    public String testRest(@PathVariable("id") Integer id,@PathVariable("username") String username){
        System.out.println("id:"+id+"username:"+username);
        return "success";
    }

即匹配到當(dāng)前請求映射,還要在控制器方法中獲取傳遞過去的請求參數(shù)
以前是name=value,現(xiàn)在只有value。
只需要在控制器方法里面獲取占位符id這個值,賦值到參數(shù)里面,
所以需要在@RequestMapping注解的value屬性中設(shè)置的路徑中,使用{xx}的方式表示路徑中的數(shù)據(jù),和通過@PathVariable注解將占位符所標(biāo)識的值和控制器方法的形參進(jìn)行綁定(也就是路徑中的變量 )。

到此這篇關(guān)于java中@requestMappling注解的使用的文章就介紹到這了,更多相關(guān)java @requestMappling注解內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • springcloud Zuul動態(tài)路由的實現(xiàn)

    springcloud Zuul動態(tài)路由的實現(xiàn)

    這篇文章主要介紹了springcloud Zuul動態(tài)路由的實現(xiàn),詳細(xì)的介紹了什么是Zuu及其動態(tài)路由的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-11-11
  • Spring如何替換掉默認(rèn)common-logging.jar

    Spring如何替換掉默認(rèn)common-logging.jar

    這篇文章主要介紹了Spring如何替換掉默認(rèn)common-logging.jar,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-05-05
  • springboot的切面應(yīng)用方式(注解Aspect)

    springboot的切面應(yīng)用方式(注解Aspect)

    文章總結(jié):Spring?Boot提供了三種攔截器:Filter、Interceptor和Aspect,Filter主要用于內(nèi)容過濾和非登錄狀態(tài)的非法請求過濾,無法獲取Spring框架相關(guān)的信息,Interceptor可以在獲取請求類名、方法名的同時,獲取請求參數(shù),但無法獲取參數(shù)值
    2024-11-11
  • Spring Boot集成JSch的示例代碼

    Spring Boot集成JSch的示例代碼

    本文主要介紹了Spring Boot集成JSch的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-03-03
  • java實現(xiàn)遠(yuǎn)程桌面的實例代碼

    java實現(xiàn)遠(yuǎn)程桌面的實例代碼

    下面小編就為大家分享一篇java實現(xiàn)遠(yuǎn)程桌面的實例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • Java語言class類用法及泛化(詳解)

    Java語言class類用法及泛化(詳解)

    這篇文章主要介紹了Java語言class類用法及泛化(詳解),大家都知道Java程序在運行過程中,對所有的對象今夕類型標(biāo)識,也就是RTTI。這項信息記錄了每個對象所屬的類,需要的朋友可以參考下
    2015-07-07
  • 我賭你不清楚Spring中關(guān)于Null的這些事

    我賭你不清楚Spring中關(guān)于Null的這些事

    這篇文章主要介紹了我賭你不清楚Spring中關(guān)于Null的這些事,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • 如何將文件流轉(zhuǎn)換成byte[]數(shù)組

    如何將文件流轉(zhuǎn)換成byte[]數(shù)組

    這篇文章主要介紹了如何將文件流轉(zhuǎn)換成byte[]數(shù)組,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • 解析Java中的隊列和用LinkedList集合模擬隊列的方法

    解析Java中的隊列和用LinkedList集合模擬隊列的方法

    這篇文章主要介紹了解析Java中的隊列和用LinkedList集合模擬隊列的方法,相關(guān)算法的實現(xiàn)也是ACM中的常見題目,需要的朋友可以參考下
    2015-08-08
  • SpringBoot中使用@Async實現(xiàn)異步任務(wù)調(diào)用詳解

    SpringBoot中使用@Async實現(xiàn)異步任務(wù)調(diào)用詳解

    這篇文章主要介紹了SpringBoot中使用@Async實現(xiàn)異步任務(wù)調(diào)用詳解,一個可以無需等待被調(diào)用函數(shù)的返回值就讓操作繼續(xù)進(jìn)行的方法(來自百度百科),即程序在順序執(zhí)行時,不等待異步調(diào)用的語句返回結(jié)果就執(zhí)行后面的程序,需要的朋友可以參考下
    2023-12-12

最新評論

青神县| 荣昌县| 花莲市| 柘城县| 南投县| 胶南市| 乐至县| 简阳市| 菏泽市| 杭锦后旗| 邵阳县| 丹凤县| 通河县| 沾益县| 富阳市| 运城市| 涡阳县| 武平县| 黄浦区| 新安县| 临西县| 夹江县| 万州区| 海伦市| 开远市| 镇雄县| 宁武县| 从化市| 乾安县| 江安县| 永德县| 建平县| 潍坊市| 盐池县| 丽江市| 台中市| 石楼县| 磐安县| 平武县| 张北县| 名山县|