![](/img/trans.png)
[英]How to use JPA findBy query on column mapped by @OneToMany relationship?
[英]How to use JPA findBy on column mapped by @OneToMany annotation in spring boot
我有這個 model 調用發票,它包含一個@one to many annotation
這是我的 model:
public class Invoice {
@Id
@GeneratedValue(strategy= GenerationType.IDENTITY)
private int id;
@Column(name = "serial_number")
private long serialNumber;
@Column(name = "status")
private String status;
@Column(name = "created_date")
private Timestamp createdDate;
@Column(name = "is_deleted")
private boolean isDeleted;
@ManyToOne
@JsonIgnore
@JoinColumn(name = "customer_id")
private Customer customer;
@ManyToOne
@JoinColumn(name = "employee_id")
private Employee employee;
@OneToMany(fetch=FetchType.EAGER, mappedBy="invoice")
private Set <InvoiceHistory> invoiceHistories;
@OneToMany (mappedBy = "invoice")
private Set <InvoiceItem> quantity;
}
如何通過所有具有員工 id = xxxxx 的發票找到?
使用自定義查詢獲取發票
Query("select x from Invoice x where x.employee.employeeId=:empId")
List<Invoice > getAllInvoicesByEmpId(Long empId) ;
或者,您可以通過基於員工 Model 中的 OneToMany 關系的 id 加載員工來獲取屬於員工但來自員工本身的所有發票,但這種方式“不推薦”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.