java - 如何使用带有数组的 Spring Form 绑定多个对象?
问题描述
我尝试使用创建一个简单的测试来使用 Spring Form 从我的实体中保存多个对象:
型号:
@Entity
public class Person {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;
private String name;
private int age;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
在控制器上:
@RequestMapping("/person/insertMultiple")
public String insertMultiple(Model model) {
Person[] persons = new Person[3];
model.addAttribute("persons", persons);
return "/person/insert_multiple";
}
在 jsp 上:
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<h1>New Persons</h1>
<form:form action="/person/inserirMultiAction/" method="post" modelAttribute="persons">
<form:input path="persons[0].name"/>
<form:input path="persons[0].age"/>
<form:input path="persons[1].name"/>
<form:input path="persons[1].age"/>
</form:form>
得到这个错误:
出现意外错误(类型=内部服务器错误,状态=500)。bean 类 [[Lcom.mycompany.model.Person;] 的无效属性“persons[0]”:Bean 属性“persons[0]”不可读或具有无效的 getter 方法:getter 的返回类型是否与设置器的参数类型?
解决方案
推荐阅读
- vba - VBA:从网页单击选项卡(getelementby?)
- struct - 如何在 Rust 中实现 C 灵活数组成员模式?
- javascript - For循环立即打印所有循环的console.log(),而循环的其余部分仍在运行?
- javascript - 用于选择工作流程的单选按钮
- swift - 为什么没有 Swift 等效的向视图添加操作?
- sql - 我需要帮助来根据多个条件清理输出字符串数据库
- list - 递归地从一个列表中提取元素与另一个列表中的元素
- vba - 工作表更改事件问题 (Excel VBA)
- javascript - 如何使用角度反应形式从多个输入中计算值?
- c# - 防止自定义边框调整大小手柄将 Winform 调整得太小