0
点赞
收藏
分享

微信扫一扫

SpringMVC-@RequestMapping相关属性

value 属性

用来设置请求路径,值是一个字符串数组,可以设置多个路径共同访问对应方法。

SpringMVC-@RequestMapping相关属性_java

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>@RequestMapping相关属性</title>
</head>
<body>
<a href="${pageContext.request.contextPath}/first.action">第一个请求</a>
<br/>
<a href="${pageContext.request.contextPath}/second.action">第二个请求</a>
</body>
</html>

SpringMVC-@RequestMapping相关属性_html_02

/**
* @author: BNTang
*/
@Controller
public class MyFirstController {

@RequestMapping(value = {"/first", "/second"})
public String show() {
return "/first";
}
}

测试方式启动项目之后发送请求即可。

method 属性

用来设置映射的请求方式,值是 ​​RequestMethod​​ 类型的数组。

SpringMVC-@RequestMapping相关属性_请求头_03

如果没有写,则没有限制,POST 与 GET 都可以请求到对应的方法,如果指定了请求类型,则必须得是相应的请求类型才能访问到对应的方法。

首先只指定一个请求类型也就是 POST 我们接下来开始发送请求如下:

SpringMVC-@RequestMapping相关属性_html_04

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>@RequestMapping相关属性</title>
</head>
<body>
<form action="${pageContext.request.contextPath}/testMethod.action" method="post">
<input type="submit" value="提交"/>
</form>
</body>
</html>

SpringMVC-@RequestMapping相关属性_java_05

/**
* @author: BNTang
*/
@Controller
public class MyFirstController {

@RequestMapping(value = {"/testMethod"}, method = {RequestMethod.POST})
public String show() {
return "/first";
}
}

测试方式启动项目之后发送请求即可,在改为 GET 然后在发送请求你即可看到效果。

SpringMVC-@RequestMapping相关属性_请求头_06

测试方式启动项目之后发送请求即可。

params 属性

必须设置对应的请求参数和请求值才能访问到对应的内容

SpringMVC-@RequestMapping相关属性_SpringMVC_07

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>@RequestMapping相关属性</title>
</head>
<body>
<form action="${pageContext.request.contextPath}/testMethod.action?name=BNTang&age=23" method="post">
<input type="submit" value="提交"/>
</form>
</body>
</html>

SpringMVC-@RequestMapping相关属性_请求头_08

/**
* @author: BNTang
*/
@Controller
public class MyFirstController {

@RequestMapping(
value = {"/testMethod"},
method = {RequestMethod.POST},
params = {"name=BNTang", "age!=24"})
public String show() {
System.out.println("BNTang");
return "/first";
}
}

headers 属性

发送的请求头必须要与设置的请求头内容相同时,才能够访问到对应的方法

SpringMVC-@RequestMapping相关属性_请求头_09

/**
* @author: BNTang
*/
@Controller
public class MyFirstController {

@RequestMapping(
value = {"/testMethod"},
method = {RequestMethod.POST},
params = {"name=BNTang", "age!=24"},
headers = {"Host=localhost:8080", "Referer=http://localhost:8080/index.jsp"})
public String show() {
System.out.println("BNTang");
return "/first";
}
}

ant 风格地址

ant风格,请求路径的一种匹配方法,

通配符

通配符名称

作用

?

一个 ​​?​​ 匹配一个字符

*

匹配任意字符

**

匹配多重路径

​?​​ 通配符的示例如下所示:

SpringMVC-@RequestMapping相关属性_请求头_10

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>@RequestMapping相关属性</title>
</head>
<body>
<a href="${pageContext.request.contextPath}/ant/a/BNTang.action">测试Ant路径</a>
</body>
</html>

SpringMVC-@RequestMapping相关属性_java_11

/**
* @author: BNTang
*/
@Controller
public class MyFirstController {

@RequestMapping("/ant/?/BNTang")
public String show() {
System.out.println("BNTang");
return "/first";
}
}

​*​​ 通配符的示例如下所示:

SpringMVC-@RequestMapping相关属性_html_12

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>@RequestMapping相关属性</title>
</head>
<body>
<a href="${pageContext.request.contextPath}/ant/abc/BNTang.action">测试Ant路径</a>
</body>
</html>

SpringMVC-@RequestMapping相关属性_java_13

/**
* @author: BNTang
*/
@Controller
public class MyFirstController {

@RequestMapping("/ant/*/BNTang")
public String show() {
System.out.println("BNTang");
return "/first";
}
}

​**​​ 通配符的示例如下所示:

SpringMVC-@RequestMapping相关属性_java_14

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>@RequestMapping相关属性</title>
</head>
<body>
<a href="${pageContext.request.contextPath}/ant/abc/defg/hijk/BNTang.action">测试Ant路径</a>
</body>
</html>

SpringMVC-@RequestMapping相关属性_java_15

/**
* @author: BNTang
*/
@Controller
public class MyFirstController {

@RequestMapping("/ant/**/BNTang")
public String show() {
System.out.println("BNTang");
return "/first";
}
}




举报

相关推荐

0 条评论