- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Book.java
package pl.spring.guru.spring5webapp.model;
import javax.persistence.*;
import java.util.HashSet;
import java.util.Objects;
import java.util.Set;
@Entity
public class Book {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long id;
private String title;
private String isbn;
@OneToOne
private Publisher publisher;
@ManyToMany
@JoinTable(name = "author_book", joinColumns = @JoinColumn(name =
"book_id"), inverseJoinColumns = @JoinColumn(name = "author_id"))
private Set<Author> authors = new HashSet<>();
public Book() {
}
public Book(String title, String isbn, Publisher publisher){
this.title=title;
this.isbn=isbn;
this.publisher=publisher;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getIsbn() {
return isbn;
}
public void setIsbn(String isbn) {
this.isbn = isbn;
}
public Publisher getPublisher() {
return publisher;
}
public void setPublisher(Publisher publisher) {
this.publisher = publisher;
}
public Set<Author> getAuthors() {
return authors;
}
public void setAuthors(Set<Author> authors) {
this.authors = authors;
}
}
BookController.java
package pl.spring.guru.spring5webapp.controllers;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import pl.spring.guru.spring5webapp.repositories.BookRepository;
@Controller
public class BookController {
private BookRepository bookRepository;
public BookController(BookRepository bookRepository) {
this.bookRepository = bookRepository;
}
@RequestMapping(value = "/books")
public String getBooks(Model model){
model.addAttribute("books",bookRepository.findAll());
return "books";
}
}
books.html - thymeleaf 模板
<!DOCTYPE html>
<html lang="en" xmlns:th=”http://www.thymeleaf.org”>
<head>
<meta charset="UTF-8">
<title>Spring Framework Guru</title>
</head>
<body>
<h1>Books list</h1>
<table>
<tr>
<th>ID</th>
<th>Title</th>
<th>Author</th>
</tr>
<tr th:each="book : ${books}">
<td th:text="${book.id}">123</td>
<td th:text="${book.title}">Spring in Action</td>
<td th:text="${book.publisher.name}">Wrox</td>
</tr>
</table>
</body>
</html>
当我尝试访问 localhost/books 时,我得到一个
Exception evaluating SpringEL expression: "book.id" (template: "books" - line 16, col 13)
我刚刚学习spring,开始使用spring框架大师教程。我也不明白,为什么需要在 book.java 中添加一个空的构造函数。没有它我就会遇到下一个问题:
No default constructor for entity: : pl.spring.guru.spring5webapp.model.Book; nested exception is org.hibernate.InstantiationException: No default constructor for entity: : pl.spring.guru.spring5webapp.model.Book
最佳答案
您缺少 id 的 getter。如果没有它,模板引擎就无法访问它。
至于默认构造函数 - Spring 需要它来创建实体的实例。如果没有可用的默认构造函数,Spring 如何知道要使用哪些参数。
除了本教程之外,您还应该查看 Spring 框架引用文档。需要阅读的内容有很多,但尤其是 DI 基础知识,解释得非常好。
关于java - 评估 SpringEL 表达式的异常,Spring Guru 类(class),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52455245/
我的 thymeleaf 模板有这样的问题。我得到: Exception evaluating SpringEL expression: "prod.itemName" (main:18) 来自这个表
我无法将值从集合传递到 html 页面。以前它在我添加集合以仅过滤日期列表之前起作用。如果有人可以提供帮助,我们将不胜感激。 :) 具有属性“日期”的 getter/setter 的实体/类: pub
我被困在我的项目中,我在网站的另一页上有一个看似相同的设置,但我无法让这个工作。 DemoApplication.java @GetMapping("/generate") public St
我正在使用 #strings.substr() 函数,它给出了以下错误: There was an unexpected error (type=Internal Server Error, stat
我正在尝试保存“员工”模型,而不为其分配任何“电话”模型(oneToOne 关系)。我有一个表单,在其中我通过添加以下内容来创建员工:名字、姓氏,然后是一个下拉列表,我可以从中选择要分配的电话。每当我
我在 Spring boot 应用程序中使用 Microsoft SQL。我已经弄清楚了一切,现在我正在尝试将数据从 SQL 数据库传递到前端。但是,当我通过 thymeleaf 传递信息时,它不起作
Book.java package pl.spring.guru.spring5webapp.model; import javax.persistence.*; import java.util.H
当我尝试在我的@Preauthorize 注释中使用“或”运算符时,出现以下错误。 java.lang.IllegalArgumentException: Failed to evaluate exp
所以我正在构建一个小型锻炼日志网络应用程序。截至目前,它应该做的就是拉出锻炼并显示锻炼名称。但thymeleaf似乎不知道exerciseName是什么。我的数据库中确实有一个带有锻炼名称的锻炼,但似
我正在开发一个简单的项目来实现 Spring 安全。当我尝试使用 Spring 和 Thymeleaf 的 Logout 链接时,问题就出现了。 1.pom.xml
我是 Spring Boot 新手,并尝试使用 JPA/JPQL 在两个不相关的实体(事务和项目)之间进行联接。但是在使用 thymeleaf 以表格格式显示它时出现以下错误: 2020-04-08
我从我的 ApplicationAdvice 类中获取 currentUser 并在用户登录时将其显示在每个页面上: @ModelAttribute("currentUser") public Tmt
我是一名优秀的程序员,十分优秀!