Spring mvc中@RequestMapping 6個基本用法小結

來源:互聯網
上載者:User

標籤:class   java   http   tar   ext   com   

1)最基本的,方法層級上應用,例如:    Java代碼  @RequestMapping(value="/departments")  public String simplePattern(){      System.out.println("simplePattern method was called");    return "someResult";    }      則訪問http://localhost/xxxx/departments的時候,會調用 simplePattern方法了  2) 參數綁定   Java代碼  @RequestMapping(value="/departments")  public String findDepatment(    @RequestParam("departmentId") String departmentId){          System.out.println("Find department with ID: " + departmentId);      return "someResult";    }        形如這樣的訪問形式:     /departments?departmentId=23就可以觸發訪問findDepatment方法了  3 REST風格的參數   Java代碼  @RequestMapping(value="/departments/{departmentId}")  public String findDepatment(@PathVariable String departmentId){      System.out.println("Find department with ID: " + departmentId);    return "someResult";    }       形如REST風格的地址訪問,比如: /departments/23,其中用(@PathVariable接收rest風格的參數  4 REST風格的參數綁定形式之2    先看例子,這個有點象之前的: Java代碼  @RequestMapping(value="/departments/{departmentId}")  public String findDepatmentAlternative(    @PathVariable("departmentId") String someDepartmentId){        System.out.println("Find department with ID: " + someDepartmentId);      return "someResult";    }       這個有點不同,就是接收形如/departments/23的URL訪問,把23作為傳入的departmetnId,,但是在實際的方法findDepatmentAlternative中,使用 @PathVariable("departmentId") String someDepartmentId,將其綁定為 someDepartmentId,所以這裡someDepartmentId為23  5 url中同時綁定多個id  Java代碼  @RequestMapping(value="/departments/{departmentId}/employees/{employeeId}")  public String findEmployee(    @PathVariable String departmentId,    @PathVariable String employeeId){        System.out.println("Find employee with ID: " + employeeId +         " from department: " + departmentId);      return "someResult";    }       這個其實也比較好理解了。  6 支援Regex   Java代碼  @RequestMapping(value="/{textualPart:[a-z-]+}.{numericPart:[\\d]+}")  public String regularExpression(    @PathVariable String textualPart,    @PathVariable String numericPart){        System.out.println("Textual part: " + textualPart +         ", numeric part: " + numericPart);      return "someResult";  }       比如如下的URL:/sometext.123,則輸出: Textual part: sometext, numeric part: 123.

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.