这是我的场景。我有一个叫Appointment的实体。它是这样创建的-
@Setter
@Getter
@Entity
@Table(name = "appointment")
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class Appointment extends AbstractAuditingEntity{
@JsonFormat(pattern="dd-MM-yyyy")
private Date appointmentDate;
@Enumerated(EnumType.STRING)
private AppointmentStatus appointmentStatus;
@OneToOne
@JoinColumn(name = "patient_id", referencedColumnName = "id")
private Patient patient;
@OneToOne
@JoinColumn(name = "doctor_id", referencedColumnName = "id")
private Doctor doctor;
@Column(columnDefinition = "TEXT")
private String appointCancelReason;
}
在实施中,患者可以预约。患者可以在预约时指定任何未来日期。现在,我需要编写一个SpringDataJPA查询来显示医生即将预约的列表。我的想法是使用findAppointmentByAppointmentDateIsAfter()
,因为我觉得在未来某个日期预订的所有约会都应该列出即将到来的约会。任何更好的建议都将不胜感激。或者请告诉我如何最好地使用findAppointmentByAppointmentDateIsAfter()
根据Spring Data JPA方法名称文档,
您可以在spring JPA存储库中提供一个方法,该存储库用于扩展
List<Appointment> findByAppointmentDateAfter(Date date)
它将由Spring自动实现,以执行您希望它执行的操作。然后您只需调用它并将您打算筛选的日期作为参数传递即可。