SpringMVC的RequestMapping注解

一、@RequestMapping注解的功能

从注解名称上我们可以看到,@RequestMapping注解的作用就是将请求和处理请求的控制器方法关联起来,建立映射关系。

SpringMVC接收到指定的请求,就会来找到在映射关系中对应的控制器方法来处理这个请求。

二、@RequestMapping注解的位置

@RequestMapping标识一个类:设置映射请求的请求路径的初始信息。

@RequestMapping标识一个方法:设置映射请求请求路径的具体信息。

@Controller
@RequestMapping("/test")
public class RequestMappingController {
//此时请求映射所映射的请求的请求路径为:/test/testRequestMapping
@RequestMapping("/testRequestMapping")
public String testRequestMapping(){
return "success";
}
}

三、@RequestMapping注解的Value属性

@RequestMapping注解的Value属性可以通过请求的请求地址匹配请求映射

@RequestMapping注解的Value属性是一个字符串类型的数组,表示该请求映射能够匹配多个请求地址所对应的请求

index.html

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<a th:href="@{/hello/testRequestMapping}">测试@RequestMapping的value属性--
>/testRequestMapping</a><br>
<a th:href="@{/hello/test}">测试@RequestMapping的value属性-->/test</a><br>
</body>
</html>

 hello.java

package com.zk.hello;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;


@Controller
@RequestMapping(
        value = {"/hello","/test1"},
        method = {RequestMethod.GET,RequestMethod.POST}
)
public class hello {
    @RequestMapping(
        value = {"/testRequestMapping", "/test"}
    )
    public String testRequestMapping(){
    return "success";
    }
}    

四、@RequestMapping注解的method属性 

@RequestMapping注解的method属性通过请求的请求方式(get或post)匹配请求映射
@RequestMapping注解的method属性是一个RequestMethod类型的数组,表示该请求映射能够匹配
多种请求方式的请求
若当前请求的请求地址满足请求映射的value属性,但是请求方式不满足method属性,则浏览器报错
405:Request method 'POST' not supported

posted @ 2022-06-24 23:29  leagueandlegends  阅读(57)  评论(0)    收藏  举报