gpt4 book ai didi

java - Spring MVC HashMap 表单集成

转载 作者:行者123 更新时间:2023-11-30 08:00:41 25 4
gpt4 key购买 nike

我在模型对象中有一个 HashMap 。表单提交时如何绑定(bind) HashMap 。

Map<String, List<Employee>> employeeMap= new HashMap< String, List<Employee>>(); 
List<Employee> employeeList;
//getters and setters of employeeMap and employeeList

员工对象是

class Employee{

String name;
String pincode;
String organization;

//getters and setter

}

表单输入值为

List{ //list iteration here

<input type="text" name="employeeMap[${emp.id}].employeeList[list_index].name" value=""/>
}

但是没有成功。请帮助我如何给出正确的输入名称以与 HashMap 绑定(bind)

最佳答案

我认为你有两个错误:

  1. 您的 map 的键为字符串,但您的 ${emp.id} 可能是 int 或 long,请尝试使用引号。
  2. 在 map 中,您有员工列表,该列表不能有姓名,您可以将其删除。

尝试这样:

<input type="text" name="employeeMap["${emp.id}"][list_index].name" value=""/>

这是我的类似工作示例:

    User u1 = new User();
u1.setEmailAddress("email1");
User u2 = new User();
u2.setEmailAddress("email2");

u1List.add(u1);
u1List.add(u2);
u2List.add(u2);
u2List.add(u1);

userMap.put("1", u1List);
userMap.put("2", u2List);

model.addAttribute("userMap", userMap);

JSP:

Email of second user from map with key=1 = ${employeeMap["1"][1].emailAddress}

关于java - Spring MVC HashMap 表单集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31967899/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com