SpringMVC_04_RequestMapping注解的使用和属性

1.注解的使用

SpringMVC_04_RequestMapping注解的使用和属性
SpringMVC_04_RequestMapping注解的使用和属性

2.注解的属性

SpringMVC_04_RequestMapping注解的使用和属性

2.1使用method属性

package cn.itcast.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

//控制器类
@Controller
@RequestMapping(path = "/user")
public class HelloController {
    @RequestMapping(path = "/hello",method = {RequestMethod.POST})
    public String sayHello(){
        System.out.println("Hello StringMVC");
        return "success";
    }
}

再重新部署项目,就请求失败了

SpringMVC_04_RequestMapping注解的使用和属性

2.2使用param属性

//控制器类
@Controller
@RequestMapping(path = "/user")
public class HelloController {
    @RequestMapping(path = "/hello",params = {"username"})
    public String sayHello(){
        System.out.println("Hello StringMVC");
        return "success";
    }
}

jsp文件也需要有username属性,才能部署成功

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>

    <h3>入门程序</h3>
    <a href="/user/hello?username">入门程序</a>
</body>
</html>

还可以给属性赋值

//控制器类
@Controller
@RequestMapping(path = "/user")
public class HelloController {
    @RequestMapping(path = "/hello",params = {"username=123"})
    public String sayHello(){
        System.out.println("Hello StringMVC");
        return "success";
    }
}

当然jsp文件也需要相同的值,才能部署成功

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>

    <h3>入门程序</h3>
    <a href="/user/hello?username=123">入门程序</a>
</body>
</html>

2.3使用Accept

//控制器类
@Controller
@RequestMapping(path = "/user")
public class HelloController {
    @RequestMapping(path = "/hello",params = {"username=123"},headers = {"Accept"})
    public String sayHello(){
        System.out.println("Hello StringMVC");
        return "success";
    }
}

执行成功了,因为有请求头