zoukankan      html  css  js  c++  java
  • Spring mvc中@RequestMapping 6个基本用法整理

    继续整理,这个是前段时间用jsp开发的一个站点,说起来php程序员去做jsp程序确实有些小不适应,但是弄完后绝对对于这种强类型语言而比收获还是颇多的。

    1,最基本的,方法级别上应用
    @RequestMapping(value="/departments")  
    public String simplePattern(){  
      
      System.out.println("simplePattern method was called");  
      return "someResult";  
      
    }  
     则访问http://localhost/xxxx/departments的时候,会调用 simplePattern方法了
    2, 参数绑定    
    @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风格的参数  
    @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  
       先看例子,这个有点象之前的:  
    @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  
    @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, 支持正则表达式  
    @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. 
    

      

    一个人静静坐在电脑面前写代码的感觉,那是什么感觉?那是武林高手闭关修炼的感觉。
  • 相关阅读:
    C# 删除指定目录下的所有文件及文件夹
    C# 数组集合分页 Skip Take
    MongoDB模糊查询 工具
    C# skip 重试执行代码段
    C# 加载配置文件
    消息队列MSMQ的使用
    C#中const和readonly的区别
    JSP页面中的tab页
    使用jquery获取单选按钮radio的值
    JSP页面获取下来框select选中项的值和文本的方法
  • 原文地址:https://www.cnblogs.com/bieanju/p/5801617.html
Copyright © 2011-2022 走看看