struts2 获得重名 name 属性
struts2 对form进行了再此封装,减少了我们很多代码,从jsp到 action 的参数,可以通过?ActionContext都能去得,同时也可以通过在action 里面进行属性 获得。
?
1. 假设我们获得 jsp 里面多个参数:
? ? ?<input ?name="message"/> ?
? ? ?<input ?name="message"/>?
? ? ?....更多....
?
? ? ?在action 里面,我们只需要定义:
?
? ? ? private String[] ?message;
? ? ? set(){} ?get(){}
?
? ? ? public String showMessage(){
? ? ? ?// 打印message 数组
? ? ? ?// ?这里对同名的 传递都是数组集合,通过getParameterNames 获得,封装成了map 对象。
? ? ? ?return "success";
? ? ? }
?
2.如果我们获得是多个对象集合呢?
? ????<input ?name="user[0].name"/> ?
? ? ? <input ?name="user[1].name"/>?
? ? ?....更多....
?
? ? ?在action 里面,我们只需要定义:
?
? ? ? private List<User> ?user;
? ? ? set(){} ?get(){}
?
? ? ? public String showUser(){
? ? ? ?// 打印user?集合
? ? ? ?// ?这样就可以获得了。
? ? ? ?return "success";
? ? ? }
?
3. 如果我们要获得set 等集合,是同样的道理。
4. ?如果需要比较复杂的类型,转换器比较合适,参考:http://coolalei-sohu-com.iteye.com/blog/1003897
?