<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-126  評論-247  文章-5  trackbacks-0

    @RequestMapping 參數說明

    value
    定義處理方法的請求的 URL 地址。
    method
    定義處理方法的 http method 類型,如 GET、POST 等。
    params
    定義請求的 URL 中必須包含的參數。
    headers
    定義請求中 Request Headers 必須包含的參數。

    @RequestMapping 的用法

    @RequestMapping 有兩種標注方式,一種是標注在類級別上,一種是標注在方法級別上。
    標注在方法上時,value 表示訪問該方法的 URL 地址。標注在類上時,value 相當于一個命名空間,即訪問該 Controller 下的任一方法都需
    要帶上這個命名空間。
    ExampleController.java
    @Controller
    @RequestMapping("/example")
    public class ExampleController {

        @RequestMapping
        public String execute(){
            return "example_page";
        }
        
        @RequestMapping("/todo")
        public String doSomething(){
            return "example_todo_page";
        }
        
    }
    /example.action
    執行的是 execute() 方法。execute() 方法的 @RequestMapping 注解缺省 value 值,在這種情況下,當訪問命名空間時默認執行的是這個
    方法。方法級別上的 @RequestMapping 標注是必須的,否則方法無法被正確訪問。
    /example/todo.action
    執行的是 doSomething() 方法。類級別上的 @RequestMapping 標注不是必須的,在不寫的情況下,方法上定義的 URL 都是絕對地址,否則,
    方法上定義的 URL 都是相對于它所在的 Controller 的。

    @RequestMapping(method)

    指定 method 的值
    @RequestMapping(value = "/register", method = RequestMethod.GET)
    public String register(){
        return "example_register_page";
    }
    method 的值一旦指定,那么,處理方法就只對指定的 http method 類型的請求進行處理。
    @RequestMapping(value = "/register", method = RequestMethod.GET)
    public String register1(){
        return "example_register_get_page";
    }

    @RequestMapping(value = "/register", method = RequestMethod.POST)
    public String register2(){
        return "example_register_post_page";
    }
    可以為多個方法映射相同的 URI,不同的 http method 類型,Spring MVC 根據請求的 method 類型是可以區分開這些方法的。
    當 /example/register.action 是以 GET 的方式提交的時候,Spring MVC 調用 register1() 來處理請求;若是以 POST 的方式提交,
    則調 register2() 來處理提交的請求。

    缺省 method 的值
    @RequestMapping("/enter")
    public String enter(){
        return "example_enter_page";
    }
    method 若是缺省沒指定,并不是說它默認只處理 GET 方式的請求,而是它可以處理任何方式的 http method 類型的請求。
    指定 method 是為了細化映射 ( 縮小處理方法的映射范圍 ),在 method 沒有指定的情況下,它的映射范圍是最大的。

    @RequestMapping(params)

    與 method 相類似,作用是為了細化映射。只有當 URL 中包含與 params 值相匹配的參數的請求,處理方法才會被調用。
    @RequestMapping(value = "/find", params = "target")
    public String find1(){
        return "example_find1_page";
    }

    @RequestMapping(value = "/find", params = "!target")
    public String find2(){
        return "example_find2_page";
    }

    @RequestMapping(value = "/search", params = "target=product")
    public String search1(){
        return "example_search1_page";
    }

    @RequestMapping(value = "/search", params = "target!=product")
    public String search2(){
        return "example_search2_page";
    }
    find1()
    請求的 URL 中必須要有 target 參數,才能夠到達此方法。如 /example/find.action?target 或 /example/find.action?target=x 等
    find2()
    請求的 URL 中必須不能有 target 參數,才能夠到達此方法。如 /example/find.action 或 /example/find.action?q=x 等
    search1()
    請求的 URL 中必須要有 target=product 參數,才能夠到達此方法。如 /example/search.action?target=product 等
    search2()
    請求的 URL 中必須不能有 target=product 參數,才能夠到達此方法。如 /example/search.action?target=article 等

    @RequestMapping(headers)

    headers 的作用也是用于細化映射。只有當請求的 Request Headers 中包含與 heanders 值相匹配的參數,處理方法才會被調用。
    @RequestMapping(value = "/specify", headers = "accept=text/*")
    public String specify(){
        return "example_specify_page";
    }
    請求的 Request Headers 中 Accept 的值必須匹配 text/* ( 如 text/html ),方法才會被調用。

    源代碼下載

    springmvc-request-mapping.zip





      
    posted on 2014-08-15 21:35 fancydeepin 閱讀(39571) 評論(1)  編輯  收藏

    評論:
    # re: spring mvc(2):請求地址映射(@RequestMapping) 2014-08-19 23:07 | corplib.com
    到底怎么回事了呢?  回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 欧亚精品一区三区免费| 免费观看无遮挡www的小视频| 最近免费中文字幕4| 亚洲免费视频观看| 69式互添免费视频| 亚洲AV综合色区无码二区偷拍 | 亚洲视频在线视频| 精品无码国产污污污免费网站| 久久亚洲综合色一区二区三区| 麻豆精品成人免费国产片| 亚洲Av永久无码精品三区在线| 久热免费在线视频| 亚洲第一成年网站大全亚洲| 性短视频在线观看免费不卡流畅| 亚洲av片不卡无码久久| 免费看大美女大黄大色| 美女尿口扒开图片免费 | 亚洲视频精品在线| 曰曰鲁夜夜免费播放视频 | 亚洲黄色中文字幕| 免费毛片a在线观看67194| 亚洲熟妇无码av另类vr影视| 又粗又大又猛又爽免费视频 | 日韩在线永久免费播放| 亚洲喷奶水中文字幕电影| 午夜影视在线免费观看| 成年网站免费入口在线观看| 亚洲成色www久久网站夜月| 日本免费网址大全在线观看| 成人亚洲国产精品久久| 亚洲va中文字幕无码久久| 国产精品99久久免费观看 | 婷婷亚洲综合一区二区| 亚洲日本乱码在线观看| 曰批全过程免费视频播放网站| fc2免费人成为视频| 亚洲高清国产AV拍精品青青草原 | 永久免费视频v片www| 久久久久国色AV免费观看| 亚洲女人初试黑人巨高清| 四虎影视永久免费观看|