Java 在thymeleaf模板中发布OneToMany数据库记录
我有两门课-联系人和电话,联系人有一套电话。 这是我的控制器Java 在thymeleaf模板中发布OneToMany数据库记录,java,spring,thymeleaf,Java,Spring,Thymeleaf,我有两门课-联系人和电话,联系人有一套电话。 这是我的控制器 import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.validation.BindingResult; import org.sprin
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@Controller
public class ContactFormController {
@Autowired
ContactRepository contactRepo;
@Autowired
PhoneRepository phoneRepo;
@RequestMapping(value = "/data", method = RequestMethod.GET)
public String showAll(Model model) {
model.addAttribute("contacts", contactRepo.findAll());
model.addAttribute("phones", phoneRepo.findAll());
return "dataresult";
}
我想通过thymeleaf模板显示我的数据库记录,以下是我的html代码:
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>Dane</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<h3>Dane</h3>
<p th:each="contact : ${contacts}">
<h4>ID:</h4>
<div th:text="${contact.id}"></div>
<h4>Name:</h4>
<div th:text="${contact.firstName}"></div>
<li th:each="item : ${contact.phones}" th:text="${item}">Item description here...</li>
<div>---------</div>
</p>
</body>
</html>
丹麦人
丹麦人
身份证件:
姓名:
此处的项目描述
---------
以下是我得到的结果-
电话类-
Contact类有一个
@OneToMany(fetch=FetchType.LAZY)
@JoinColumn(name=“contactId”)
私人电话
如何使我的控制器显示联系人id、姓名和电话号码集?您拥有的是打印电话本身,它解释了您的输出。您需要做的是访问
项目
的编号
字段。比如说,
th:each="item : ${contact.phones}" th:text="${item.number}"
或者
@我不知道怎么做,我对百里香和html一窍不通。虽然我认为我必须在电话课上访问数字字段,但我不知道该如何忽略最后的评论,我没有看到问题是什么。非常感谢!它起作用了。我想我还有一个问题,我能再请你帮忙吗?:)@新手101,没问题,很乐意帮忙。你可以接受它作为答案并投赞成票来表达你的感激之情:)如果你愿意,你可以@me。今天剩下的大部分时间我都在上课,但今晚晚些时候我会回来@newbie101。好的。这是代码正在工作,它正在向基添加一条新记录,但只使用名称。但我不知道如何制作输入数字的表格。这是html-@newbie101,您需要另一个输入(
),但要输入数字。如果你有一个没有“家”、“工作”或类似区别的数字列表,你需要有一个动态的方式根据请求添加另一个。
th:each="item : ${contact.phones}" th:text="${item.getNumber()}"