我正在尝试获取一个实体数据,该数据与不同实体具有多个多对一关系。一种关系也可以为空。问题是,如果该关系为null,则无法获取数据。
父班(课程)
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="Course_ID")
private Integer id;
private Integer createdByID;
@ManyToOne
@JoinColumn(name = "teacher_ID",referencedColumnName="teacher_id")
private TeacherInformation teacher;
@ManyToOne
@JoinColumn(name="CC_ID",referencedColumnName="cc_id")
private CCInformation cc;
儿童(CC)
@Id
@Column(name="cc_id")
private Integer id;
private String name;
@OneToMany(targetEntity=CourseInformation.class,mappedBy="teacher",fetch=FetchType.LAZY,cascade=CascadeType.ALL)
private List<CourseInformation> course;
在“课程”表中,CC条目可以为null,如果为null,则我将使用crudrepository来获取其详细信息,但现在不会,因为JPA在表之间使用内部联接,因此无法获取。我可以假设的可能解决方案是使用左连接代替内部连接。但是我不知道如何在Spring Boot JPA中实现这一目标。
答案 0 :(得分:0)
您可以按以下方式编写查询:
select course from Course course left join course.cc cc