package test;
import java.util.Map;
import org.apache.struts2.util.StrutsTypeConverter;
import com.opensymphony.xwork2.conversion.impl.DefaultTypeConverter;
import dao.Telphone;
import dao.User;
public class UserConverter extends StrutsTypeConverter
{
@Override
public Object convertFromString(Map arg0, String[] arg1, Class arg2) {
System.out.println(arg1.length);
if(arg1.length>1)
{
User[] result=new User[arg1.length]; //创建一个User数组
for(int i=0;i<arg1.length;i++) //遍历数组
{
//将每个数组元素转换成一个User实例
User user=new User();
String[] uservalues=arg1[i].split(","); //将每个数组分割
user.setUsername(uservalues[0]);
user.setPassword(uservalues[1]);
result[i]=user; //将转换后的User实例装入数组
}
return result;
}
else
{
User user=new User();
String[] uservalues=arg1[0].split(",");
user.setUsername(uservalues[0]);
user.setPassword(uservalues[1]);
return user;
}
}
@Override
public String convertToString(Map arg0, Object arg1) {
if(arg1 instanceof User)
{
User user=(User)arg1;
return user.getUsername()+","+user.getPassword();
}
else if(arg1 instanceof User[])
{
User[] users=(User[])arg1;
String result="[";
for(User user:users)
{
result+=user.getUsername()+","+user.getPassword();
}
return result+"]";
}
else
{
return "";
}
}