對於列表型別引數springmvc分發器怎麼接收呢
實現:
<body> <form action="demo5" method="post"> <input type="text" name="name"> <input type="text" name="age"> <input type="checkbox" name="hover" value="噓唏"> <input type="checkbox" name="hover" value="學習"> <input type="checkbox" name="hover" value="寫程式碼"> <input type="checkbox" name="hover" value="成位"> <input type="checkbox" name="hover" value="刷抖音"> <input type="submit" value="提交"> </form> </body>
@RequestMapping("demo5") public String demo5(String name,int age,@RequestParam("hover")List<String> hover) { System.out.println(name+" "+age+" "+hover); return "main.jsp"; }
總結:
當請求引數中包含多個同名引數獲取方式
複選框的傳參引數就是同名那個引數
對於物件引數為 peo.name peo.age實現:
<input type="text" name="peo.name"> <input type="text" name="peo.age"> <input type="submit" value="提交">
其中建立實體類物件Demo
package com.wq.pojo;public class Demo { private People peo; public People getPeo() { return peo; } public void setPeo(People peo) { this.peo = peo; } @Override public String toString() { return "Demo [peo=" + peo + "]"; }}
控制器為
@RequestMapping("demo6") public String demo6(Demo demo) { System.out.println(":"+demo); return"main.jsp"; }
結果:
但是如果繼續資料格式為
<input type="text" name="peo[0].name"> <input type="text" name="peo[0].age"> <input type="text" name="peo[1].name"> <input type="text" name="peo[1].age">
實體類改
package com.wq.pojo;import java.util.List;public class Demo { private List <People> peo; public List<People> getPeo() { return peo; } public void setPeo(List<People> peo) { this.peo = peo; } @Override public String toString() { return "Demo [peo=" + peo + "]"; } }
結果:
總結:
請求引數中物件屬性格式
jsp中程式碼
<input type="text" name="peo.name">
<input type="text" name="peo.age">
<input type="submit" value="提交">
新建一個實體類
物件名和引數中前面名稱對應
寫控制器
在請求引數中傳遞集合物件
jsp格式
新建一個實體類
控制器
Restful傳值方式簡化JSP中引數編寫格式
例子:
在JSP中設定特定的格式
{名稱}中自定義名稱
@PathVariable("id1") 表示獲取@RequestMapping 的內容,預設按照方法引數名稱尋找
@RequestMapping("demo8/{id1}/{name1}") public String demo8(@PathVariable("name1") String name,@PathVariable("id1") int age){ System.out.println(""+name+age); return "/main.jsp"; }
最新評論