這個是最原始的方式
使用注解后,后台這樣寫形參,前台傳的參數,會自動封裝到形參里面,但這個是基於同名配置的規則,前台參數的名稱, 要和后台形參名一致
如果前台名稱不一致,則注解不進去
@RequestParam(value="name"String username):表明前台的傳的參數名稱叫name,要往username里面注入
當前台名字和形參不一致,可以使用@RequestParam注解進行映射
required=true,表示前台的參數是不是必須要傳,默認是true必須要傳
defaultValue:表示前台沒有傳,我就給一個設置的默認值,這里設置的是haha,當沒有前台沒有傳,我就顯示haha
如果沒傳就會報下面的錯
springmvc也是支持模型傳參的
在struts中,前台頁面中是需要寫類.屬性的,在springmvc中是不用的寫前綴
普通的方式
delete后面那一串是做為參數傳到后台的,這種是restful的風格
寫上占位符,此時前台參數是注入不到后台的,得加一個注解來映射
小結:
1,傳參方式的幾種,通過原生的要手動獲取前台傳進來的參數,再手動的注入到對應的屬性
2,貼了注解后,是可以基於同名匹配的原則,直接注入到后台的形參里
3,如果前台傳的參數名和后台的形參名不一致,可以使用注解@RequestParam(value="name"String username)來映射,指明前台傳的哪個參數名,注入到后台哪個形參名,它還有一個required,指明是否一定要傳參,默認是true,不需要就的話就設置成false
還有一個defaultValue:設置如果前台沒有傳參我給他設置一個默認的值
4,springmvc是支持模型傳參的,可以通過模型來注入,此時前台頁面的名稱就不用加前綴,這點和struts2不一樣。如果加了前綴就注入不進去了
5,地址欄傳參,普通方式和restful風格
restful風格:訪問的方法后加一個占位符,形參中通過@requestParam注入方式來映射到形參中