spring mvc @PathVariable綁定URI模板變量值方式
@PathVariable綁定URI模板變量值
@PathVariable用于將請(qǐng)求URL中的模板變量映射到功能處理方法的參數(shù)上。
@RequestMapping(value="/users/{userId}/topics/{topicId}") public String test( @PathVariable(value="userId") int userId, @PathVariable(value="topicId") int topicId)
如請(qǐng)求的URL為“控制器URL/users/123/topics/456”,則自動(dòng)將URL中模板變量{userId}和{topicId}綁定到通過(guò)@PathVariable注解的同名參數(shù)上,即入?yún)⒑髐serId=123、topicId=456。
代碼在PathVariableTypeController中。
@RequestParam(參數(shù)綁定到控制器)和@PathVariable(參數(shù)綁定到url模板變量)
spring mvc:練習(xí) @RequestParam和@PathVariable
@RequestParam
: 注解將請(qǐng)求參數(shù)綁定到你的控制器方法參數(shù)@PathVariable
: 注釋將一個(gè)方法參數(shù)綁定到一個(gè)URI模板變量的值
@RequestParam: 注解將請(qǐng)求參數(shù)綁定到你的控制器方法參數(shù)
@RequestMapping(value="/example/user") public String UserInfo(Model model, @RequestParam(value="name", defaultValue="Guest") String name)
實(shí)例:
package springmvc; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; @Controller public class RequestParamExampleController { @RequestMapping(value="/example/user") public String UserInfo(Model model, @RequestParam(value="name", defaultValue="Guest") String name) { model.addAttribute("name", name); if("admin".equals(name)) { model.addAttribute("email", "admin@google.com"); }else { model.addAttribute("email", "not set"); } return "example_user"; } }
@PathVariable: 注釋將一個(gè)方法參數(shù)綁定到一個(gè)URI模板變量的值
@RequestMapping(value="/example/info/{language}/{id}/{name}") public String userInfo2(Model model, @PathVariable(value="language") String language, @PathVariable(value="id") Long id, @PathVariable(value="name") String name)
實(shí)例:
package springmvc; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.PathVariable; @Controller public class RequestParamExampleController { @RequestMapping(value="/example/person/{name}/{age}") public String userPerson(Model model, @PathVariable(value="name") String name, @PathVariable(value="age") Long age) { model.addAttribute("name", name); model.addAttribute("age", age); String desc = ""; if(age > 20) { desc = "oldman"; }else { desc = "yongman"; } model.addAttribute("desc", desc); return "example_person"; } }
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java輸入字母來(lái)判斷星期幾的實(shí)現(xiàn)代碼
這篇文章主要介紹了Java輸入字母來(lái)判斷星期幾的實(shí)現(xiàn)代碼,用情況語(yǔ)句比較好,如果第一個(gè)字母一樣,則判斷用情況語(yǔ)句或if語(yǔ)句判斷第二個(gè)字母需要的朋友可以參考下2017-02-02java input 調(diào)用手機(jī)相機(jī)和本地照片上傳圖片到服務(wù)器然后壓縮的方法
今天小編就為大家分享一篇java input 實(shí)現(xiàn)調(diào)用手機(jī)相機(jī)和本地照片上傳圖片到服務(wù)器然后壓縮的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-08-08Java8 使用流抽取List<T>集合中T的某個(gè)屬性操作
這篇文章主要介紹了Java8 使用流抽取List<T>集合中T的某個(gè)屬性操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-02-02Java利用InputStream類實(shí)現(xiàn)文件讀取與處理
在Java開(kāi)發(fā)中,輸入流(InputStream)是一個(gè)非常重要的概念,它涉及到文件讀寫、網(wǎng)絡(luò)傳輸?shù)榷鄠€(gè)方面,InputStream類是Java中輸入流的抽象基類,定義了讀取輸入流數(shù)據(jù)的方法,本文將以InputStream類為切入點(diǎn),介紹Java中的輸入流概念及其應(yīng)用,需要的朋友可以參考下2023-11-11Eureka源碼閱讀解析Server服務(wù)端啟動(dòng)流程實(shí)例
這篇文章主要為大家介紹了Eureka源碼閱讀解析Server服務(wù)端啟動(dòng)流程實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10Java pom.xml parent引用報(bào)錯(cuò)問(wèn)題解決方案
這篇文章主要介紹了Java pom.xml parent引用報(bào)錯(cuò)問(wèn)題解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08spring中JdbcTemplate操作oracle的存儲(chǔ)過(guò)程實(shí)例代碼
JdbcTemplate是Spring對(duì)JDBC的封裝,目的是使JDBC更加易于使用,JdbcTemplate是Spring的一部分,下面這篇文章主要給大家介紹了關(guān)于spring中JdbcTemplate操作oracle的存儲(chǔ)過(guò)程的相關(guān)資料,需要的朋友可以參考下2023-04-04Spring單元測(cè)試類ApplicationTests錯(cuò)誤的解決
這篇文章主要介紹了Spring單元測(cè)試類ApplicationTests錯(cuò)誤的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-01-01