springmvc 中RequestMapping注解的使用

1、RequestMapping注解既可以修饰方法,又可以修饰类型,类型指定的url相对于web跟路径,而方法修饰的url相对于类url;

 

2、RequestMapping的几个属性:

  value:用于指定url;

  method:用于指定请求方式;

  params:请求参数,支持简单的表达式,例子: params = {"username","age!=10"}表示请求参数中必须有username age不能等于10.

  headers:请求头,支持简单表达式,例子:headers = {"Accept Language=zh-CN,zh;q=0.8"}表示Accept Lanuage必须等于这个否则无法找到链接

  这些参数用于更加精确指定请求。

 

3、RequestMapping注解支持ant类型通配符:

  ?:表示一个字符;

  *:表示任意多个字符

  **:匹配多层路径

  例如:RequestMapping("testAnt/*/abc") 表示 /testAnt/sndbsbhds(任意多个字符)/abc

 

测试代码示例:

/**
     * 四个属性用于指定更加详细的url headers = { "Accept-Language=zh-CN,zh;q=0.8,en;q=0.6" }
     * "username",
     * 
     * @return
     */
    @RequestMapping(value = "/helloworld", method = RequestMethod.GET, params = {
            "username", "age!=10" }, headers = { "Accept-Language=zh-CN,zh;q=0.8,en;q=0.6" })
    public String hello() {
        System.out.println("hello");
        return SUCCESS;
    }
    
    @RequestMapping(value = "/helloworld/*/abc", method = RequestMethod.GET)
    public String hello1() {
        System.out.println("hello");
        return SUCCESS;
    }

 

 请求:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>welcome page</title>
</head>
<body>
<a href="test/helloworld?username=&age=11">Hello World</a>
<br>
<br>
<a href="test/helloworld/adaf/abc">test Ant</a>
</body>
</html>

 

posted on 2016-12-12 16:31  _故乡的原风景  阅读(232)  评论(0编辑  收藏  举报