首先 上兩個位址:
位址①
http://localhost:8989/SSSP/emps?pageNo=2
位址②
http://localhost:8989/SSSP/emp/7
如果想擷取位址①中的 pageNo的值 ‘2’ ,則使用 @RequestParam ,
如果想擷取位址②中的 emp/7 中的 ‘7 ’ 則使用 @PathVariable
擷取位址① 中的‘2’ 使用的 方法是如下
擷取位址② 中的 ‘7’ 使用的方法是如下:
大道理不講 原理也不分析就記憶一點,那一點呢? 看‘這個符号‘?’
1. 若擷取的入參的 參數 是下面這種形式 就使用 @requestParam 去擷取 參數‘2’
/emps?pageNo=2
2. 若擷取的入參的 參數 是下面這種形式 就使用 @PathVariable 去擷取參數 ‘7’
/emp/7
RequestParam 漢語意思就是: 請求參數 顧名思義 就是擷取參數的;
PathVariable 漢語意思是:路徑變量,顧名思義,就是要擷取一個url 位址中的一部分值,那一部分呢?
RequestMapping 上說明了@RequestMapping(value="/emp/{id}"),我就是想擷取你URL位址 /emp/ 的後面的那個 {id}的。
so,就看‘?’ 若是想擷取 ‘?’ 後面的pageNo 的值 ‘2’, 就使用RequestParam ,
若想擷取的是url 位址的一部分 ‘7’ 就使用PathVariable ,
@PathVariable是用來獲得請求url中的動态參數的。
轉自:http://blog.csdn.net/chuck_kui/article/details/55506723