requestmapping無效 @RequestMappingvalue可以重復(fù)嗎?
@RequestMappingvalue可以重復(fù)嗎?如果您重復(fù)值,編譯器將不會報告您的錯誤,但當(dāng)時間到來時,請求跳轉(zhuǎn)到控制器的方法取決于上帝的意愿。你可以擺好香臺,插上三根香,祈禱,然后跳到正確的方向
@RequestMappingvalue可以重復(fù)嗎?
如果您重復(fù)值,編譯器將不會報告您的錯誤,但當(dāng)時間到來時,請求跳轉(zhuǎn)到控制器的方法取決于上帝的意愿。你可以擺好香臺,插上三根香,祈禱,然后跳到正確的方向。
@requestmapping包含多個參數(shù),前臺怎么傳參?
@RequestMapping(值=“/list”,方法=請求方法.GET)
public String getAll(Model){
Set<GroupSecure> secures=快去拿()
模型.addAttribute(“secures”,secures)
return“group/list”
}
@RequestMapping(value=“/list”,method=請求方法.GET,params=“method=one”
公共字符串getOneUser(@RequestParam(value=“name”)字符串名,Model Model){
Set<GroupSecure> secures=redisDao.getByName(姓名)模型.addAttribute(“secures”,secures)
return“group/list”
}
@modelattribute的用法與@requestbody
@modelattribute有兩種用法:一種是直接標(biāo)記方法,另一種是標(biāo)記方法的參數(shù),兩種標(biāo)記方法效果不同
一種。直接標(biāo)記方法
部署后運行,點擊頁面測試按鈕查看控制臺輸出,現(xiàn)在就發(fā)送,后臺控制器不直接進入模型測試.do相反,首先執(zhí)行標(biāo)有@modeldattribute的init方法。應(yīng)該理解,當(dāng)同一控制器中的任何方法被標(biāo)記為@modeldattribute annotation時,只要頁面請求進入控制器,無論請求哪個方法,都將首先執(zhí)行標(biāo)記為@modeldattribute的方法。因此,我們可以使用@modeldattribute注釋來進行一些初始化操作。當(dāng)同一控制器中的多個方法被標(biāo)記為@modeldattribute annotation時,所有被標(biāo)記為@modeldattribute的方法都將依次執(zhí)行,然后輸入請求的方法。
當(dāng)@requestmapping標(biāo)記和@modelattribute同時標(biāo)記在同一方法上時
點擊測試頁面,進入控制器后返回,頁面報告404。這是因為在同一方法上標(biāo)記兩個注釋時,邏輯視圖名稱不是返回值,而是請求的返回路徑模型測試.do生成邏輯視圖。在這里,我們修改代碼,刪除控制器上的@requestmapping標(biāo)記,并修改下一個頁面的請求路徑,以便生成的視圖路徑與訪問的頁面路徑相同。
點擊測試頁面,發(fā)現(xiàn)當(dāng)一個方法同時有兩個注解時,該方法的返回值將成為模型的返回值,關(guān)鍵是標(biāo)記名
2、@modelattribute參數(shù)前標(biāo)記
點擊頁面測試,而URL address傳遞的參數(shù)會顯示在頁面的文本框中,因為spring MVC會自動匹配頁面?zhèn)鬟f的參數(shù)的name屬性和后臺控制器中方法的參數(shù)名。如果參數(shù)名稱相同,則會自動匹配。如果控制器中的方法是一個封裝的bean,它將在bean中自動匹配,實際上,您不需要用這種方式注釋@modeldattribute。只要滿足匹配要求,就可以得到值