我有一个@OneToMany
关联实体:
@OneToMany(cascade = CascadeType.ALL, mappedBy = "house", fetch = FetchType.EAGER)
private Set<Room> rooms;
然后在Thymeleaf中我想填充四个输入文本字段,以便将四个房间保存到DB中。
问题是如何通过Hibernate将这些字段填充到正确的数据库中?
<tr th:each="i,iterStat : ${#numbers.sequence( 1, 4)}">
<td>
<input type="text" th:field="*{????}" />
</td>
</tr>
答案 0 :(得分:0)
你必须创建另一个实体,即类型房间 与属性即描述
然后在房子实体
@OneToMany(cascade = CascadeType.ALL, mappedBy = "house", fetch = FetchType.EAGER)
private Set<Room> rooms
在您进入页面之前的控制器中,您可以初始化房屋,然后初始化4个房间并将房间设置为房屋。
所以
Set<Room> h = new HashSet<Room>();
for (i=0;i<4;i++){
Room room = new Room();
h.add(room);
}
House house = new House();
shouse.setRooms(h);
然后在您的html表单中,您可以拥有房屋对象
<form id=".." th:action=".." th:object="${house}" method="post">
然后你可以
<tr th:each="i,iterStat : ${house.rooms}">
<td>
<input type="text" th:field="${i.description}" />
</td>
</tr>
希望这有帮助