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()}"