springMVC参数的传递方式(1.通过@PathVariabl获取路径参数,2.@ModelAttribute获取数据,3.HttpServletRequest取参,4@RequestParam)
生活随笔
收集整理的這篇文章主要介紹了
springMVC参数的传递方式(1.通过@PathVariabl获取路径参数,2.@ModelAttribute获取数据,3.HttpServletRequest取参,4@RequestParam)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
通過@PathVariabl注解獲取路徑中傳遞參數
JAVA 1?? ??@RequestMapping(value?=?"/{id}/{str}")
2?????public?ModelAndView?helloWorld(@PathVariable?String?id,
3?????????????@PathVariable?String?str)?{
4?????????System.out.println(id);
5?????????System.out.println(str);
6?????????return?new?ModelAndView("/helloWorld");
7?????} 用@ModelAttribute注解獲取POST請求的FORM表單數據
JSP 1?<form?method="post"?action="hao.do">
2?a:?<input?id="a"?type="text"???name="a"/>
3?b:?<input?id="b"?type="text"???name="b"/>
4?<input?type="submit"?value="Submit"?/>
5?</form>
JAVA pojo 1?public?class?Pojo{
2?????private?String?a;
3?????private?int?b;
4?? ??
5?
JAVA controller 1?@RequestMapping(method?=?RequestMethod.POST)
2?????public?String?processSubmit(@ModelAttribute("pojo")?Pojo?pojo)?{?
3?????????
4?????????return?"helloWorld";
5?????} 直接用HttpServletRequest獲取
JAVA 1?? ??@RequestMapping(method?=?RequestMethod.GET)
2?????public?String?get(HttpServletRequest?request,?HttpServletResponse?response)?{
4?????????System.out.println(request.getParameter("a"));
5?????????return?"helloWorld";
6?????}
用注解@RequestParam綁定請求參數a到變量a
當請求參數a不存在時會有異常發生,可以通過設置屬性required=false解決,
例如:?@RequestParam(value="a", required=false)
JAVA 1?? ??@RequestMapping(value?=?"/requestParam",?method?=?RequestMethod.GET)
2?????public?String?setupForm(@RequestParam("a")?String?a,?ModelMap?model)?{
3?????????System.out.println(a);
4??? ? ? ?return "helloWorld";}
JAVA 1?? ??@RequestMapping(value?=?"/{id}/{str}")
2?????public?ModelAndView?helloWorld(@PathVariable?String?id,
3?????????????@PathVariable?String?str)?{
4?????????System.out.println(id);
5?????????System.out.println(str);
6?????????return?new?ModelAndView("/helloWorld");
7?????}
JSP 1?<form?method="post"?action="hao.do">
2?a:?<input?id="a"?type="text"???name="a"/>
3?b:?<input?id="b"?type="text"???name="b"/>
4?<input?type="submit"?value="Submit"?/>
5?</form>
JAVA pojo 1?public?class?Pojo{
2?????private?String?a;
3?????private?int?b;
4?? ??
5?
JAVA controller 1?@RequestMapping(method?=?RequestMethod.POST)
2?????public?String?processSubmit(@ModelAttribute("pojo")?Pojo?pojo)?{?
3?????????
4?????????return?"helloWorld";
5?????}
JAVA 1?? ??@RequestMapping(method?=?RequestMethod.GET)
2?????public?String?get(HttpServletRequest?request,?HttpServletResponse?response)?{
4?????????System.out.println(request.getParameter("a"));
5?????????return?"helloWorld";
6?????}
當請求參數a不存在時會有異常發生,可以通過設置屬性required=false解決,
例如:?@RequestParam(value="a", required=false)
JAVA 1?? ??@RequestMapping(value?=?"/requestParam",?method?=?RequestMethod.GET)
2?????public?String?setupForm(@RequestParam("a")?String?a,?ModelMap?model)?{
3?????????System.out.println(a);
4??? ? ? ?return "helloWorld";}
總結
以上是生活随笔為你收集整理的springMVC参数的传递方式(1.通过@PathVariabl获取路径参数,2.@ModelAttribute获取数据,3.HttpServletRequest取参,4@RequestParam)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 日期加减
- 下一篇: 金融衍生品的利与弊 投资者值得一看