当前位置: 首页 > 知识库问答 >
问题:

将JPA实体表数据显示到thymeleaf视图

宋新知
2023-03-14

我有一个带有id和name列的JPA实体表。我想将名称值显示到thymeleaf视图。现在,我可以在视图中看到Entity对象,但不能看到Name的列值。下面是我如何创建表并定义getter和setter的:

@Entity
@Table(name = "Book")
public class Book extends AbstractPersistable<Long> {

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "id")
private Long id;

@Column(name = "name")
private String name;

public Long getID() {
    return this.id;
}

public String getContent() {
    return this.name;
}

public void setID (Long id) {
    this.id = id;
}

public void setContent (String name) {
    this.name = name;
    }
}

从控制器中,我尝试设置内容的方式如下:

@Controller
@RequestMapping("/")
public class BookController {

@Autowired
private BookRepository bookRepository;

@RequestMapping("/addBook")
@ResponseBody
public String addBook(@RequestParam("name") String name) {
    Book book = new Book();

    book.setContent(name);
    bookRepository.save(book);
    return name;

}

@RequestMapping(value = "book", method = RequestMethod.GET)
    public String books(Model model) {
    model.addAttribute("books", bookRepository.findAll());
    return "book";
    } 

}
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" 
  xmlns:th="http://www.thymeleaf.org"      
  xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity3"
  xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout">
    <head lang="en">
        <meta charset="UTF-8" />
        <title>Books</title>
    </head>
    <body>
        <h1>Books Database</h1>
        <ul th:each="book : ${books}">
            <li th:text="${book.name}"></li>
        </ul>                
    </body>
</html>

我只想让书名出现,而不是物体。我该怎么做?

共有1个答案

赫连捷
2023-03-14

Yoor getter for name必须命名为getName()才能被ExpressionLanguage找到(SpEL=Spring Expression Language)。setter也应该是setName。

 类似资料:
  • 我现在正在使用UITableView,我所拥有的是 我的类.h @ interface my class:UIViewController { } @property (strong,strong)ui label * name; @属性(strong,strong)UILabel*add; 和 我的班级.m -(NSInteger)tableView:(UITableView*)atableVi

  • 我有一个使用JPA的Spring Boot应用程序,它有两个数据源,一个用于DB2,一个用于SQL Server。 当我尝试将实体保存到SQL Server时,不会抛出任何错误,但该实体不会持久化到数据库。我看不到日志中正在生成插入。 提前感谢 下面是我尝试保存实体所执行的代码@组成部分 下面是sql Server配置。 这是SQL Server存储库 公共接口BeercupMessageLogR

  • 我在两个不同的依赖项DependencyA和DependencyB中有两个类TableNameA和TableNameB,它们表示表table_name_a和table_name_b,字段如下所述。 如上所述,我正在使用jooq,并且我想将table_name_a和table_name_b记录映射到TableNameA和TableNameB类中,但是在TableNameA的对象中,只有“FIELD”

  • 我想创建网站。我已经配置了登录“/login”和注册“/registration”页面。这个网站的主要任务是显示每个学生的时间表。现在我需要在页面“/Schedule”上显示科目列表,使用HTML-table,根据学生注册时选择的字段组和课程。我有14个不同的表格和科目列表(一个表格-一组学生)。 是否需要为每个表创建@Entity类和存储库? 如何使用注册数据显示学生信息? 页面“/计划”的控制

  • 我正试图找到在ORM上映射我的数据的最佳方法。我有一个从MySQL数据库中获取数据的查询 用spring boot和spring的数据获得这些数据的最优方法是什么?? 我应该使用@query注释并执行它还是以某种方式为Equipment and Devices表创建实体,然后使用JPQL/HQL将表连接到查询中,但是我应该如何映射结果? 提前道谢。

  • 问题内容: 这是我正在处理的代码: 我想在列表视图上显示它们。您有任何教程可以帮助我入门吗?我是Web服务的新手。谢谢。 问题答案: 列表视图中最受欢迎的教学作品之一,可能会帮助您: - 拉维的博客 解析json之后要执行的步骤: 您可以使用jackson库用一行代码来解析json。 (单击此链接以获取有关对象映射教程的更多信息)