我的数据库中有 5 条 Tour 实体记录。以此类推,我创建了一个类
@Entity
@Table(name="tours")
public class Tour {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;
@Column(name = "title")
private String title;
@Column(name = "description")
private String description;
@Column(name = "startTime",length=20)
private String startTime;
@Column(name = "endTime",length=20)
private String endTime;
@Column(name = "price")
private double price;
//геттеры и сеттеры
}
我想用 Thymeleaf 将它们显示在 html 页面中。创建了一个控制器:
@Controller
public class MainController {
@Autowired
private TourRepository tourRepository;
@GetMapping("/")
public String mainPage(Model model) {
List<Tour> tourList=tourRepository.findAll();
model.addAttribute("tours",tourList);
return "home/main";
}
@RequestMapping("/main")
public String main() {
return "redirect:/";}
}
和存储库:
public interface TourRepository extends JpaRepository<Tour,Integer> {
}
应用程序属性:
# hibernate configurations
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=update
# thumeleaf configurations
spring.thymeleaf.mode= HTML
spring.thymeleaf.cache=false
我试图以表格的形式通过循环传递字段的值
<table>
<thead>
<tr>
<th>Title</th>
<th>Price</th>
</tr>
</thead>
<tbody>
<tr th:each ="tour : ${tours}">
<td th:utext="${tour.title}">...</td>
<td th:utext="${tour.price}">...</td>
</tr>
</tbody>
</table>
但是,由于某种原因,它显示了数据库中第一条记录的 5 个重复项。
在 IDE 本身中,变量带有红色下划线
谁能解释为什么会发生这种情况以及如何解决?