小编Rom*_*Alf的帖子

分配给另一个表 JPA 的实体字段计数

我正在使用 Spring Boot、HSQLDB 和 Data JPA。我有两个实体: Book(int id, String name, long votesCount) 和 Vote(int id, int book_id) 我需要将 books 表中的所有条目获取到 List<Book> 中,并用 votes 表中的行数填充 votesCount 字段具有相同的所需 book_id。

因此,对于给定的表 books: id name 1 book1 2 book2

投票:id book_id 1 1 2 1 3 2

结果列表应包含 2 个 Book 实例:名称:book1,votesCount:2 name:book2,votesCount:1

做这个的最好方式是什么?

@Entity
@Table(name = "books")
class Book{

  @Id
  int id;
  String name;

  @OneToMany(fetch = FetchType.LAZY, mappedBy = "book")
  List<Vote> votes;

  @Transient
  long voteCount;
}
Run Code Online (Sandbox Code Playgroud)

////////////////////////////////////////////////////////////////////

@Entity
@Table(name = "votes")
class Vote{ …
Run Code Online (Sandbox Code Playgroud)

java sql hibernate spring-data-jpa

0
推荐指数
1
解决办法
1461
查看次数

标签 统计

hibernate ×1

java ×1

spring-data-jpa ×1

sql ×1