SpringMVC中 @RequestMapping 的多种属性

1.value

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

示例:

<a href="${pageContext.request.contextPath}/testrequestmapping1">请求方式1</a><br/>
    <a href="${pageContext.request.contextPath}/testrequestmapping2">请求方式2</a>
@RequestMapping(value = {"/testrequestmapping1","/testrequestmapping2"})
    public String testrequest(){

        return "/second.jsp";
    }

 2.method

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

如果没有写,则没有限制,post与get都能请求到对应方法

如果指定了请求类型,则必须得是相应的请求类型才能访问到对应方法

示例:

<form action="${pageContext.request.contextPath}/testmethod" method="post">
    <input type="submit" value="测试">
</form>
 @RequestMapping(value = "/testmethod",method = {RequestMethod.GET})
    public String testmethod(){
        System.out.println("0.0");
        return "/second.jsp";
    }

3.params

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

示例:

 @RequestMapping(value = "/testparams",params = {"name=aaa"})
    public String testparams(){
        System.out.println("^-^");
        return "/second.jsp";
    }
<a href="${pageContext.request.contextPath}/testparams?name=aaa">请求方式3</a><br/>

请求的到

<a href="${pageContext.request.contextPath}/testparams?name=bbb">请求方式3</a><br/>

请求不到

4.headers

设置请求头,只要请求头符合条件的才访问的到

示例:

<a href="${pageContext.request.contextPath}/testheaders">请求方式4</a><br/>
 @RequestMapping(value = "/testheaders",
          headers = {"Referer=http://localhost:8080/requestmapping.jsp"}
            )
    public String testheaders(){
        System.out.println("^-^");
        return "/second.jsp";
    }

这里设置了要访问该方法,请求头中的Referer必须是从requestmapping.jsp中转发过来的,这样可以访问

如果在浏览器中直接输入 http://localhost:8080/testheaders.action 是访问不到的

 

5.@requestMapping地址通配符写法

?表示一个字符

??表示两个字符

*表示多个字符

**表示多重路径

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值