概述
1,使用set接收参数
前台:
后台:实例化的 成员变量.makeNew[].属性
<tr> <td>学生姓名</td> <td><input type="text" name="userSet.makeNew[0].uname"></td> <td>学生性别</td> <td><input type="text" name="userSet.makeNew[0].sex"></td> </tr>
后台:
1
package com.oracle.vo; public class UserVO { private int uid; private String uname; public int getUid() { return uid; } public void setUid(int uid) { this.uid = uid; } public String getUname() { return uname; } public void setUname(String uname) { this.uname = uname; } @Override public String toString() { return "UserVO{" + "uid=" + uid + ", uname='" + uname + ''' ", address='" + address + ''' + '}'; } }
package com.oracle.action; import com.opensymphony.xwork2.util.KeyProperty; import com.oracle.vo.UserVO; import java.util.HashSet; import java.util.Set; import java.util.logging.Logger; import org.apache.logging.log4j.LogManager; public class SetAction { // @KeyProperty("主键")必须要写 @KeyProperty("uid") //使用set必须自己实例化 系统不会自动给我们实例化 private Set<UserVO> userSet=new HashSet<UserVO>();
//必须要有set方法 一般我们把get和set方法都写出来
public Set<UserVO> getUserSet() {
return
userSet; }
public void setUserSet(Set<UserVO> userSet) {
this.
userSet = userSet; }
public String list(){
for(UserVO vo:
userSet){ System.
out.println(vo.getUname()); }
return
"list"; }}
2 使用 Map 接收参数
前台:
成员变量['属性']
<tr> <td>学生姓名:</td> <td><input type="text" name="params['uname']"></td> <td>学生性别:</td> <td><input type="text" name="params['sex']"></td> </tr>
后台:
package com.oracle.action; import com.oracle.vo.UserVO; import org.apache.commons.beanutils.BeanUtils; import java.lang.reflect.InvocationTargetException; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Set; public class MapAction { //必须自己实例化 有set和get方法 private Map<String,Object> params=new HashMap<String, Object>(); public Map<String, Object> getParams() { return params; } public void setParams(Map<String, Object> params) { this.params = params; } public String list() throws InvocationTargetException, IllegalAccessException { //使用iterator 遍历 Set<Map.Entry<String, Object>> entries = params.entrySet(); Iterator<Map.Entry<String, Object>> iterator = entries.iterator(); while (iterator.hasNext()){ Map.Entry<String, Object> next = iterator.next(); System.out.println(next.getKey()); System.out.println(next.getValue()); } UserVO userVO=new UserVO(); //将map转换为对象 BeanUtils.populate(userVO,params); System.out.println(userVO); return "list"; } }
最后
以上就是等待橘子为你收集整理的Struts2 使用set和Map接收前台传来的数据的全部内容,希望文章能够帮你解决Struts2 使用set和Map接收前台传来的数据所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复